現在のページ:ホームVIプログラミング研究室>手計算と同じ四捨五入

手計算と同じ四捨五入


有効数字を指定して四捨五入します。そのとき手計算と同じ結果になるよう調整してあります。

LabVIEWで四捨五入を行う桁の値が5のときは、一つ上の桁の値によってふるまいが違い、奇数であれば切り上げ、偶数なら切り下げるようになっています。
たとえば、小数点以下1桁を四捨五入して整数にするとき、1.5は2になりますが、2.5も2になります。
手計算では1.5は2に、2.5は3にするよう教わったはずです。しかしそうすると統計的には切り上げ側に多少偏るので、それを避けるためにIEEEで方法が決められています。
従ってこれはLabVIEWに限った話ではなく、ほとんどのプログラミング言語(コンパイラ)がそうなっています。

たまに、たとえば仕様書に記載されている規格が手計算を元に決められているような場合に不整合が生じるので、それに合わせた四捨五入ルーチンを作りました。マイナス側にも対応しています。


入力

出力

ダイアグラムの解説

  1. 精度で指定された桁が1の位になるように倍率を掛ける。
  2. 絶対値を取って0.501を加え、次に小さい整数に丸める。
  3. 倍率と符号を元に戻す。

制限または仕様


ダウンロード

Round Up & Down at 5.vi (13kB)


現在のページ:ホームVIプログラミング研究室>手計算と同じ四捨五入