- Справка Scilab
- Основные функции
- Побитовые операции
- Комплексные числа
- Дискретная математика
- Элементарные матрицы
- логарифм - экспонента - степень
- Плавающая запятая
- Представление целых чисел
- Манипуляции с матрицами
- Матричные операции
- Поиск и сортировка
- Операции с множествами
- Сигнальная обработка
- Тригонометрия
- &, &&
- выделение
- ind2sub
- вставка
- isempty
- isequal
- modulo
- ndims
- |, ||
- size
- sub2ind
Please note that the recommended version of Scilab is 2025.0.0. This page might be outdated.
See the recommended documentation of this function
modulo
симметричный арифметический остаток от деления по модулю m
pmodulo
положительный арифметический остаток от деления по модулю m
Синтаксис
i = modulo(n,m)
i = pmodulo(n,m)
Аргументы
- m, n
Скаляр, вектор, матрица или гиперматрица закодированных целых чисел, реалов или многочлены с вещественными коэффициентами.
m
иn
должны иметь один и тот же тип. Если они имеют целочисленный тип, они могут иметь разную длину кодирования (например, int8 и int16). Если ни один из них не является скалярным, они должны иметь одинаковые размеры.- i
Скалярная, векторная, матричная или гиперматрица типа
n
(и inttype).i
принимает размеры более крупногоm
илиn
.Для полиномов, если все остатки от деления в массивеi
являются константами (порядок равен 0), тоi
имеет тип 1 (числа) вместо 2 (постоянные полиномы).
Описание
modulo
вычисляет i = n (modulo m)
,
т. е. остаток от деления n
на m
(n
и m
- целые числа).
Для полиномов используется pdiv()
.
Для чисел,
modulo()
вычисляетi = n - m. * int (n ./ m)
. Результат отрицательный (или нулевой), когдаn
отрицательный, и в противном случае.pmodulo()
вычисляетi = n - | m | . * floor (n ./ | m |)
, ответ является положительным либо равным причинам.
Если m содержит хотя бы одно значение 0, modulo(x, m)
и pmodulo(x, m) выполнит деление на ноль.
Если m имеет реальный тип, это исключение будет обрабатываться
в соответствии с к режиму ieee() .
Для закодированных целых чисел он всегда будет давать ошибку.
|
Примеры
n = [1,2,10,15]; m = [2,2,3,5]; modulo(n,m) modulo(-3, 9) modulo(10, -4) pmodulo(-3, 9) pmodulo(10, -6) pmodulo(-10, -6) // Кодированные целые числа modulo( int8(-13), int16(-7)) pmodulo(int8(-13), int16(-7)) modulo( int8(-13), int16([-7 5])) pmodulo(int8(-13), int16([-7 5])) modulo( int8([-13 8]), int16(-7)) pmodulo(int8([-13 8]), int16(-7)) modulo( int8([-13 8]), int16([-7 5])) pmodulo(int8([-13 8]), int16([-7 5])) // гиперматрицам m = grand(2,2,2,"uin",-100,100) n = grand(2,2,2,"uin",-10 ,10); n(n==0) = 1 modulo(m, 5) pmodulo(m,5) modulo(51, n) pmodulo(51,n) modulo(m, n) pmodulo(m,n) // Полиномы modulo( %z^2+1, %z) pmodulo(%z^2+1, %z)
Смотрите также
История
Версия | Описание |
5.5.0 | Расширение до кодированных целых чесел и гиперматриц кодированных целых чисел или вещественных чисел. |
6.0.2 | Расширение до гиперматриц полиномов. |
Report an issue | ||
<< isequal | Основные функции | ndims >> |