Go to the first, previous, next, last section, table of contents.


モード 練習問題 3 解答「ジョーの間違い(丸め精度)」

彼が得た答は 0.5000000000006399 でした。

問題は、2乗演算が不正確という事ではなくて、すでにスタックにあったサイン 45°が12桁の精度しかなかったということです。任意精度の計算はやはり、 入力と同等精度の答を出すだけです。

真の問題は、2乗してちょうど 0.5 になるような 12桁の数値は存在しないという ことです。f ]f [ コマンドは、(現行の精度における)最小桁を 1ずつ増減します。このコマンド群は、このような事実を決定することに役立ちます。

1:  0.707106781187      1:  0.500000000001
    .                       .

    45 S                    2 ^

1:  0.707106781187      1:  0.707106781186      1:  0.499999999999
    .                       .                       .

    U  DEL                  f [                     2 ^

高精度計算は終始一貫して高い精度で実施されなければなりません。最初の問題 で厳密に知られていた唯一の値は45°という量だけですから、入力された数値 45 に対して何かする前に演算精度を上げておかなければ、高精度演算の意味が ありません。


Go to the first, previous, next, last section, table of contents.     利用度数