Rational Developer for System z
Enterprise PL/I for z/OS, Version 4.1, 言語解説書

MOD

MOD は、次を満たす負以外の最小値 R を戻します。

  (x - R)/y = n

n は、整数値です。 すなわち、R は y で割り切れるように、x から減算する 負でない最小値です。

構文図を読む構文図をスキップする>>-MOD(x,y)----------------------------------------------------><
 
x
実数式。
y
実数式。 y = 0 の場合は、ZERODIVIDE 条件が発生します。

結果 R は、引数と共通の基数およびスケールを持つ実数です。 結果が浮動小数点の場合は、精度は x および y の 大きい方になります。結果が固定小数点の場合は、精度は次の式で指定されます。

  (min(n,p2-q2+max(q1,q2)),max(q1,q2))

(p1,q1) と (p2,q2) は、それぞれ xy の精度であり、n には、FIXED DECIMAL の場合は N が入り、FIXED BINARY の場合は M が入ります。

x および y の位取り係数が異なる固定小数点の 場合は、R が計算される前に、小さい位取り係数の引数が大きい 位取り係数に変換されます。 変換が失敗すると、結果は不定になります。

結果の属性が FIXED BIN であり、1 つ以上のオペランドに属性 UNSIGNED FIXED BIN がある場合、以下の条件の両方が真でない限り、結果は SIGNED 属性を持ちます。

上記のいずれかの条件が true でない場合、UNSIGNED オペランドはそれぞれ SIGNED に変換されます。 オペランドが大きすぎる場合は、変換によって以下が行われます。

次の例では、MOD 組み込み関数と REM 組み込み関数を対比しています。

REM 組み込み関数については、REMを参照してください。


Terms of use | Feedback

This information center is powered by Eclipse technology. (http://www.eclipse.org)