前のページ|次のページ

ROUNDE関数

第1引数を第2引数の最も近い倍数に丸め、第1引数が2つの最も近い倍数の中間にある場合には偶数の倍数を返します。

カテゴリ: 切り捨て

構文

ROUNDE(argument <, rounding-unit>)

必須引数

argument

丸める数値定数、変数または式です。

オプション引数

rounding-unit

丸め単位を指定する正の数値定数、変数または式です。

詳細

ROUNDE関数は、第1引数を第2引数の最も近い倍数に丸めます。第2引数を省略すると、ROUNDEはrounding-unitにデフォルト値の1を使用します。

比較

ROUND、ROUNDEおよびROUNDZ関数は類似していますが、次の4点が異なります。
  • ROUNDは、第1引数が第2引数の最も近い2つの倍数のほぼ中間にある場合には絶対値が大きい方の倍数を返します。
  • ROUNDEは、第1引数が第2引数の最も近い2つの倍数のほぼ中間にある場合には偶数の倍数を返します。
  • ROUNDZは、第1引数が第2引数の最も近い2つの倍数のちょうど中間にある場合には偶数の倍数を返します。
  • 丸め単位が1よりも小さい場合や整数の逆数でない場合、ROUNDZによって返される結果は10進算術演算の結果と完全には一致しない可能性があります。通常、ROUNDとROUNDEは、結果が10進算術演算に一致するようにファジーと呼ばれる追加の計算を実行します。ROUNDZは、結果をファジー処理しません。

次の例では、ROUNDE関数によって返される結果とROUND関数によって返される結果を比較します。
data results;
   do x=0 to 4 by .25;
      Rounde=rounde(x);
      Round=round(x);
      output;
   end;
run;
proc print data=results noobs;
run;
ROUNDE関数とROUND関数の出力
ROUNDE関数とROUND関数の出力

関連項目:

前のページ|次のページ|ページの先頭へ