* Bug 14741 fixed: [m,e]=log2(x) documented. frexp()=>internal
[scilab.git] / scilab / modules / elementary_functions / help / ru_RU / modulo.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
4  * Copyright (C) 2008 - INRIA
5  * Copyright (C) 2013 - Samuel GOUGEON
6  *
7  * Copyright (C) 2012 - 2016 - Scilab Enterprises
8  *
9  * This file is hereby licensed under the terms of the GNU GPL v2.0,
10  * pursuant to article 5.3.4 of the CeCILL v.2.1.
11  * This file was originally licensed under the terms of the CeCILL v2.1,
12  * and continues to be available under such terms.
13  * For more information, see the COPYING file which you should have received
14  * along with this program.
15  *
16  -->
17 <refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
18         xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns5="http://www.w3.org/1999/xhtml"
19         xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook"
20         xmlns:scilab="http://www.scilab.org" xml:id="modulo" xml:lang="ru">
21     <refnamediv>
22         <refname>modulo</refname>
23         <refpurpose>симметричный арифметический остаток от деления по модулю m</refpurpose>
24     </refnamediv>
25     <refnamediv xml:id="pmodulo">
26         <refname>pmodulo</refname>
27         <refpurpose>положительный арифметический остаток от деления по модулю m</refpurpose>
28     </refnamediv>
29     <refsynopsisdiv>
30         <title>Синтаксис</title>
31         <synopsis>i = modulo(n,m)</synopsis>
32         <para></para>
33         <synopsis>i = pmodulo(n,m)</synopsis>
34     </refsynopsisdiv>
35     <refsection>
36         <title>Аргументы</title>
37         <variablelist>
38             <varlistentry>
39                 <term>m, n</term>
40                 <listitem>
41                     <para>
42                         Скаляр, вектор, матрица или гиперматрица закодированных целых чисел,
43                         реалов или многочлены с вещественными коэффициентами.
44                         <varname>m</varname> и <varname>n</varname> должны иметь один и тот же тип.
45                         Если они имеют целочисленный тип, они могут иметь разную длину кодирования
46                         (например, int8 и int16).
47                         Если ни один из них не является скалярным, они должны иметь одинаковые размеры.
48                     </para>
49                 </listitem>
50             </varlistentry>
51             <varlistentry>
52                 <term>i</term>
53                 <listitem>
54                     <para>
55                         Скалярная, векторная, матричная или гиперматрица типа <varname>n</varname>
56                         (и inttype).
57                         <varname>i</varname> принимает размеры более крупного <varname>m</varname>
58                         или <varname>n</varname>.
59                     </para>
60                     <para>
61                         <warning>
62                             Для полиномов, если все остатки от деления в массиве <varname>i</varname>
63                             являются константами (порядок равен 0), то <varname>i</varname> имеет тип 1
64                             (числа) вместо 2 (постоянные полиномы).
65                         </warning>
66                     </para>
67                 </listitem>
68             </varlistentry>
69         </variablelist>
70     </refsection>
71     <refsection>
72         <title>Описание</title>
73         <para>
74             <function>modulo</function> вычисляет <literal>i = n (modulo m)</literal>,
75             т. е. остаток от деления <varname>n</varname> на <varname>m</varname>
76             (<varname>n</varname> и <varname>m</varname> - целые числа).
77         </para>
78         <para>Для полиномов используется <literal>pdiv()</literal>.</para>
79         <para>
80             Для чисел,
81             <itemizedlist>
82                 <listitem>
83                     <para>
84                         <literal>modulo()</literal> вычисляет <literal>i = n - m. * int (n ./ m)</literal>.
85                         Результат отрицательный (или нулевой), когда <varname>n</varname>
86                         отрицательный, и в противном случае.
87                     </para>
88                 </listitem>
89                 <listitem>
90                     <para>
91                         <literal>pmodulo()</literal> вычисляет
92                         <literal>i = n - | m | . * floor (n ./ | m |)</literal>,
93                         ответ является положительным либо равным причинам.
94                     </para>
95                 </listitem>
96             </itemizedlist>
97         </para>
98         <para>
99             <warning>
100                 Если <varname>m</varname> содержит хотя бы одно значение 0, <literal>modulo(x, m)</literal>
101                 и <literal>pmodulo(x, m)</literal> выполнит деление на ноль.
102                 Если <varname>m</varname> имеет реальный тип, это исключение будет обрабатываться
103                 в соответствии с к режиму <literal>ieee()</literal>.
104                 Для закодированных целых чисел он всегда будет давать ошибку.
105             </warning>
106         </para>
107     </refsection>
108     <refsection>
109         <title>Примеры</title>
110         <programlisting role="example"><![CDATA[
111 n = [1,2,10,15];
112 m = [2,2,3,5];
113 modulo(n,m)
114
115 modulo(-3, 9)
116 modulo(10, -4)
117
118 pmodulo(-3, 9)
119 pmodulo(10, -6)
120 pmodulo(-10, -6)
121
122 // Кодированные целые числа
123 modulo( int8(-13), int16(-7))
124 pmodulo(int8(-13), int16(-7))
125 modulo( int8(-13), int16([-7 5]))
126 pmodulo(int8(-13), int16([-7 5]))
127 modulo( int8([-13 8]), int16(-7))
128 pmodulo(int8([-13 8]), int16(-7))
129 modulo( int8([-13 8]), int16([-7 5]))
130 pmodulo(int8([-13 8]), int16([-7 5]))
131
132 // гиперматрицам
133 m = grand(2,2,2,"uin",-100,100)
134 n = grand(2,2,2,"uin",-10 ,10);
135 n(n==0) = 1
136 modulo(m, 5)
137 pmodulo(m,5)
138 modulo(51, n)
139 pmodulo(51,n)
140 modulo(m, n)
141 pmodulo(m,n)
142
143 // Полиномы
144 modulo( %z^2+1, %z)
145 pmodulo(%z^2+1, %z)
146  ]]></programlisting>
147     </refsection>
148     <refsection role= "see also">
149         <title>Смотрите также</title>
150         <simplelist type="inline">
151             <member>
152                 <link linkend="unwrap">unwrap</link>
153             </member>
154             <member>
155                 <link linkend="ieee">ieee</link>
156             </member>
157         </simplelist>
158     </refsection>
159     <refsection>
160         <title>История</title>
161         <revhistory>
162             <revision>
163                 <revnumber>5.5.0</revnumber>
164                 <revremark>Расширение до кодированных целых чесел и гиперматриц кодированных целых чисел или вещественных чисел.</revremark>
165             </revision>
166             <revision>
167                 <revnumber>6.0.2</revnumber>
168                 <revremark>Расширение до гиперматриц полиномов.</revremark>
169             </revision>
170         </revhistory>
171     </refsection>
172 </refentry>