とっておきの手土産を教えて

JIS Z8401 規格Aについてです。
なぜ奇数は繰上げ、偶数は切下げなのでしょうか?
普通に0.005なら0.01でいいと思うのですが、なぜわざわざ0.005が0.00になるのでしょうか?

A 回答 (4件)

JIS Z8401 規格A(五捨五入あるいは銀行丸め)のやり方を解った上で、理由を聞いているわけですよね。



そもそも、旧いJISは、規格Aだけであり規格Bは後から追加されました。
理由は、コンピュータの演算。

手計算(筆算、電卓、計算尺含む)は、検算のため、途中経過をこまめにメモしますよね?
また、測定値は、複数回計測して平均、という計算はよくありますよね?
(例えば、円柱の直径を図るとき、90度ずらして計測して平均をとる、楕円かもしれないので、そうする。)
そのとき、たとえば、(6.3+6.4)/2と計算します。(モノサシの目盛りの関係で、これ以上細かく計測できないとする。)平均は6.35で、丸めたら6.4なので、常に切り上げと同じになります。
※2個の場合は常に切り上げ、偶数個は切り上げの確率が大、奇数は切り上げの確率はちょうど1/2。そして、2個の平均という頻度は非常に高い。たとえば台形の面積計算の時に(上底+下底)/2がある。
これはマズイので、切り上げ切り下げを半々になるようにしたのがJIS Z8401 規格A。
で、末尾を偶数にするのは、「2で割る」演算も多用されるため。例えば、直径から半径を求める、とか。
末尾偶数なら、丸めは考えなくていいけど、末尾奇数なら、丸めが発生。手計算の場合、メンドイ。間違いの温床。
よって、微妙な差ながら、末尾偶数が有利なので末尾偶数に丸めます。

コンピュータの演算は、ちょっと事情が違います。
コンピュータの演算は、有効数字が10進換算で7桁とか15桁。これは、測定データの桁数より多いのが通常。
よって、
途中経過をこまめにメモ
の部分が関係なくなります。表記だけ丸めておいて、内部計算は目いっぱいの桁を持っているから。よって、手計算由来の主原因は喪失。
※報告書の計算書には、途中経過を書かなければならない.....いざとなれば手計算で可能な場合(=簡単な計算)ほど顕著になる.....という事情は無視します。本質でないので。
で、コンピュータ演算は通常2進なり16進である(=10進ではない)ので、10進に戻すときの丸め誤差というのがあるので、10進における五捨五入を正確にプログラミングするのはメンドイし、五捨五入関数作っても扱える範囲の制限付きにしかならないです。
よって、五捨五入は、あきらめたので規格Bでok。

※四捨五入を、たとえば INT(X+0.5)......整数に丸める場合。
  としても、コンピュータ内部では 0.5の部分が10進では0.49999999991だったりする。
  うん、ピッタリ端数0.5になるはずの場合、切り捨てじゃん。
  かといって、INT(X+0.50000001)とした場合、本当に1.4999999999999991)のような値のときも切り上げてしまうという不都合がある。


ここまでが、情報処理技術者以外がみた数値丸めの話。
情報処理技術者が話題にしている数値丸めは、これとは別の、もっと微細な優劣の話です。
私には理解不能な世界なので、別の人に聞くのが吉。
    • good
    • 1

ちょいと確認した.



SI にはあるっぽい>#2. なおコンピュータの数値計算については IEEE がこの方法を「デフォルト」としているらしい.
    • good
    • 0

No.1 です。

ちょっと補足。

もちろん、世の中一般では「四捨五入」が慣用的に使用されることを前提とした上で、「四捨五入以外の公平な方法」として提案しているのだと思います。
JIS ですから、適用範囲は日本国内だけです。
(不勉強なので知りませんが、ISO あるいは IEC で同等の国際規格があるかもしれません)
    • good
    • 0
この回答へのお礼

ありがとうございます。

お礼日時:2023/07/08 09:38

>なぜ奇数は繰上げ、偶数は切下げなのでしょうか?



「なぜ」という理由はありません。
単なる「四捨五入」だと「繰上げ」の確率の方が高くなるので、「繰上げ」と「切下げ」の確率を等しくするための「1つの解決策の提案」です。

X.001~X.049 が「切下げ」で「X.00」に(「X.000」は丸める必要がない)、0.050~0.099が「繰上げ」で「X.01」になると、「繰上げ」の方が多くなるのは分かりますね?

もちろん、奇数・偶数を逆にして「奇数は切下げ、偶数は繰上げ」として提案してもよかったのだと思います。
JIS は「共通規格」ですから、「どちらでもよい」とすると実用的ではないので、「こちらを提案」ということでそうしたのでしょうね。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


おすすめ情報

このQ&Aを見た人がよく見るQ&A