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

FIXED の ROUND

FIXED の結果の精度は、次の式によって得られます。

  (max(1,min(p-q+1+n,N)),n)

ここで、(p,q) は x の精度で、N は許可される桁数の最大数です。 したがって、n は結果のスケール因数を指定します。

n は、FIXED データのスケール因数の制限に従う必要が あります。 n が 0 より大きい場合は、小数点の右から (n) 番目の桁が丸め られます。 n がゼロまたは負の場合は、小数点の左から (1-n) 番目の桁が丸められます。

結果の値は、次の式によって得られます。ここで、x が BINARY の場合は b = 2 で、 x が DECIMAL の場合は b = 10 です。

round(x,n) = sign(x)*(b-n)* floor(abs(x)* (bn) + 1/2)

したがって、次の例では値 6.67 が出力となります。

    dcl X fixed dec(5,4) init(6.6666);

    put skip list( round(X,2) );

Terms of use | Feedback

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