左オペランド符号を有するモジュロm剰余演算
正のモジュロmユークリッド剰余演算
i = modulo(n,m)
i = pmodulo(n,m)
エンコードされた整数, 実数または多項式の
スカラー, ベクトル, またはハイパー行列
(ハイパー行列は多項式ではサポートされません).
m および nは,
同じ型である必要があります.
yが整数型の場合,(int8およびint16のように)
異なるエンコード長とすることが可能です.
どちらもスカラーでない場合、yは同じ大きさとする
必要があります.
nと同じ型(および整数型)の
スカラー, ベクトル, 行列またはハイパー行列.
i は,
mまたはnの
大きい方の大きさとなります.
modulo は,
i= n (modulo m),
すなわち, nをmで
割った剰余を計算します.
i = n - m .* int (n ./ m).
この式で,
n または mが負の場合,
答えが負となる可能性があります.
pmodulo は,
i = n - |m| .* floor (n ./ |m|)
を計算します.答えは正またはゼロとなります.
![]() | mが1つ以上の値0を含む場合,
modulo(x,m) および pmodulo(x,m)
はゼロ割を発生します.
mhが実数型の場合,
この例外は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 | エンコードされた整数およびエンコードされた整数または実数の ハイパー行列に拡張されました. |