端数処理
小数第一位が5以下ならば切り捨て、6以上ならば切り上げる丸めを「五捨六入」という。
0.4を足して切り捨てることで得られる。0.55が0へ丸められることから、「五捨六入」が「最近接丸め」ではないことがわかる。端数がランダムなデータに対しは、やや強い負のバイアスがあるため、そのようなデータに対し「五捨六入」が使われることはまずない。
「五捨六入」が実用的なのは、端数が0.1の整数倍のみを取りうる場合に限られる。この場合の「五捨六入」は、0.1〜0.5で切り捨て、0.6〜0.9で切り上げ(0.5超0.6未満は発生しない)なので、「最近接丸め」の一種の「五捨五超入」と同じ結果となる。
例えば、麻雀のとあるローカルルールでは、最終的な得失点を五捨六入する。この場合の端数は常に0.1の整数倍(100の倍数を、1000の倍数に丸める)なので、丸め結果は「五捨五超入」と同じ結果となる。
コンピュータでは、プロセッサによっては「四捨五入」と「五捨六入」を均等に使い分け、バイアスを0にする工夫がなされているものがある。
ある有限の桁数が最終的に十分であるという(正しいとしても)事実すらも深い定理かもしれない。
この事実の帰結として、標準規格では以下のようになっている。IEEE754(1985年版)では、四則演算(加減乗除)、融合乗加算、平方根、剰余(浮動小数点剰余)については、「無限の精度で演算してそれを正しく丸めた結果」と一致することを要求し、また規格に合致していると保証する実装ではそのことを保証しなければならない。一方で、より複雑な関数(演算)に対しては1985年版の仕様では同様な要求は示されず、それらに対しては典型的には「最終bitの範囲内(いわゆる「1ULP」)」の正しさは保証され無い。2008年版ではいくつかの更新があった。
Gelfond–Schneider理論およびLindemann–Weierstrass理論を用いることにより、標準の初等関数の多くは非零の有理数の引数に対して結果が超越的になる(有限回の代数演算では表せない)ことが証明されている。そのような関数の値を正しく丸めることは(原理的には)常に可能であるが、正しく丸められた値を導くために途中の計算をどれくらい高い精度で行う必要があるかの限界を事前に決めることにも多くの計算時間を必要とするかもしれない。
いくつかのパッケージは正しい丸めを提供する。
(6).2)に示す通り、コンクリートの断面寸法も小数点以下3位まで計測し、木材の所要数量(体積)を求める場合もこの規定の適用外となっている。
設計図書の数量表示について、単位は言うまでもなく、長さm、面積m2、体積m3および質量tであり、表示される数量の端数については、小数点以下2位を四捨五入して小数点以下1位とする。ただし、100以上の数値については、四捨五入して整数とする、などがある。
単価表についても、川崎市の例などのように、有効数字に合わせた桁を、一次単価表では諸雑費をプラス計上、二次以下単価表では諸雑費をプラス計上せず切捨て、などの処置で端数を調整しているのが一般的である。
また、土木工事工事費積算要領及び基準の運用にあるとおり、単価表では、歩掛表に諸雑費率があるものは単位数量当りの単価表の合計金額が、有効数字4桁になるように原則として所定の諸雑費率以内で端数を計上し、歩掛表に諸雑費率がなく、端数処理のみの場合は単位数量当りの単価表の合計金額が有効数字4桁になるように原則として端数を計上しており、単価表の各構成要素の数量×単価=金額は小数第2位までとして3位以下は切り捨てているが、内訳書では諸雑費は計上せず、内訳書の各構成要素の数量×単価=金額は1円までとし、1円未満は切り捨てている。