modulo
左オペランド符号を有するモジュロm剰余演算
pmodulo
正のモジュロmユークリッド剰余演算
呼出し手順
i = modulo(n,m)
i = pmodulo(n,m)
引数
- m, n
エンコードされた整数, 実数または多項式の, スカラー, ベクトル, またはハイパー行列
m
およびn
は, 同じ型である必要があります. yが整数型の場合,(int8およびint16のように) 異なるエンコード長とすることが可能です. どちらもスカラーでない場合、yは同じ大きさとする 必要があります.- i
n
と同じ型(および整数型)の スカラー, ベクトル, 行列またはハイパー行列.i
は,m
またはn
の 大きい方の大きさとなります.For polynomials, when all remainders in the arrayi
are constant (degree==0),i
is of type 1 (numbers) instead of 2 (constant polynomials).
説明
modulo
は, i= n (modulo m)
,
すなわち, n
をm
で 割った剰余を計算します.
多項式の場合は、pdiv()
が使用されます.
数字の場合、
modulo()
はi = n - m.* int(n./ m)
を計算します.n
が負の場合、結果は負(またはヌル)になります. それ以外は肯定的です.pmodulo()
は,i = n - |m| .* floor (n ./ |m|)
を計算します.答えは正またはゼロとなります.
m が1つ以上の値0を含む場合,
modulo(x,m) および pmodulo(x,m)
はゼロ割を発生します.
m hが実数型の場合,
この例外は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 | Extension to hypermatrices of polynomials. |
Report an issue | ||
<< isequal | Elementary Functions | ndims >> |