自動ニュース作成G
Windowsの標準電卓で4の平方根が2でなかった仕様がようやく修正
https://pc.watch.impress.co.jp/docs/news/1115607.html
2018-04-05 23:20:30
>これまで、4の平方根を求めた場合に2にはならず、32桁精度の浮動少数計算が行なわれていたため、内部的には1.99999999999999999989317180305609という結果になっていた。
≧ただし、電卓の画面には四捨五入して「2」と表示されるほか、電卓で4の平方根を求めることは少ないので実害はあまりなかったが、ここから「-2」を計算すると「-1.068281969439142e-19」と表示されていた。
・どうやったんだろう。√4の時だけの処理入れた訳ではないよな?
・たぶん9の平方根も3じゃないよね。PCの精度なんてそんなもんだ。
・ルートのアルゴリズム何つかってるんだろう。
・ここで、なつかしいやりとりをひとつ。http://gnews.x0.com/20101008_154619/
・#2 精度を言うならIEEE754の問題を挙げるべきで、2進数の問題であってPCの精度とは関係ない事の方が多いわけだが。
・Excelでいうところの通貨型、固定小数点じゃいかんのだろうか。
・MSXやポケコンのユーザーだったころは、ちまたのパソコンはなぜBCDで計算していないのだろう?と思ったものだ。
・#5-6 入力も出力も整数だから基数の違いによる誤差ではないんじゃないか?何て呼ぶんだっけ?量子化誤差?
・#3 二乗して比較値より大きいか小さいか判定しながら下位桁を確定していく級数展開
・#8 十進数を二進数にすると、0.1とかは循環小数になって、桁数が有限なので十進数に戻すと丸め誤差が出る。 十進数のままで 1÷3 したものを ×3 すると出る誤差と理屈は一緒かな。
・#10 入出力は整数だから計算過程で発生した誤差だろうとの話だよ。
・#10 だよね。#6#8 内部表現を判ってないんだな。エクセルもIEE754準拠だから変数型に関わらず2進数変換の誤差はつきまとうんだよ。内部表記のシミュレータを貼っておくわ。http://tools.m-bsys.com/calculators/ieee754.php by#5
・通貨型は小数点下分×10することで小数点が無いことにしている。はず。 だから誤差は上下の桁あふれのみではないだろうか。 ルートの計算で小数点下が5桁なんて使い物になるのかは知らないが。