プロが教える店舗&オフィスのセキュリティ対策術

計算をして有効数字2桁で答えなければいけない時、途中計算では一桁多くとって3桁で計算すると習いました。理由は桁落ちを防ぐためと言っていたのですが、どういう意味ですか。

A 回答 (6件)

5.136+4.225=9.361→9.36


5.13+4.22=9.35
桁落ち、というより、桁の繰り上がりが反映されない。
    • good
    • 0

「理由は桁落ちを防ぐため」


先生は「桁落ち」の意味を 誤解されているのでは。
途中計算では一桁多くとって 計算するのは「丸め誤差対策」です。

言葉の意味は、ネットで検索する方が 早く回答が見つかりますよ。
    • good
    • 1

> 理由は桁落ちを防ぐため



変な話ですね。

[1]「桁落ち」ってのは、足し算・引き算の時の「桁合わせ」で生じる問題です。「1桁多くとって」おけば避けられる、なんて単純な話ではない。

(a) 1.241 - 1.239 = 0.002
(結果の有効数字は1桁だけに減ってしまった。)
(b) 1.241 + 0.0002123 = 1.241
(計算結果を有効数字4桁で表すと、足し算をしなかったのと同じ。なので、1.241に0.0002123を1000回加えても、何もしなかったのと同じ。)

 この問題に対処するには、そもそも、計算式を工夫して
  ● ごく近い値同士の引き算が生じないように
  ● あまりに桁違いの値同士の足し算・引き算が生じないように
しておく必要がある。もちろん、「ごく近い」や「あまりに桁違い」という判断の基準は、(上記の例から容易にわかるように)数値の有効桁数によって決まるわけです。だから、うまい計算式を工夫できない場合には、「計算中の有効桁数をうんと多くしておくことによって、「ごく近い値」でも「あまりに桁違いの値」でもないようにする」という方法しかありません。

[2] 一方「1桁多くとって」おくのが有効なのは、計算が掛け算・割り算である場合の、丸め誤差対策です。
 「丸め誤差」というのは、有効数字以下を丸めた(四捨五入したとか)時に生じる相対誤差です。有効数字2桁というのなら、相対誤差は大体「1/100以下」ということ。
 ところが丸めで生じた相対誤差は、掛け算・割り算をやるたびに、およそ倍になっていく。例えばデータPが真値pに対して相対誤差εを含む、つまり
  P = (1+ε)p
だとすると、
  P^2 = (1+2ε + ε^2)(p^2)
だから相対誤差はおよそ2倍(2ε)になっている。ですから、。(No.1にあるように)掛け算・割り算を1〜2度やった結果を有効数字2桁で答えるためには、丸めは有効数字3桁でやっておく必要がある
    • good
    • 0
この回答へのお礼

詳しく教えていただき、大変助かりました。
ありがとうございます。

お礼日時:2021/01/15 20:55

↑この方の言ってることも誤差の話ですよね。


桁落ちではありません。
    • good
    • 0

ほんとに桁落ちのことを先生は言っているのでしょうか?1桁多くとっても桁落ちを防げるとは思えないので


間違ってる気がするのですが…

ちなみに桁落ちとは、絶対値が近い数値の差を計算した時に有効数字が非常に小さくなってしまうことです。
例えば、1.1234-1.1233=0.0001
この場合有効数字は5桁なので、答えを無理やりそれに合わせると1.0000×10^-4 となります。
しかし0.0000の部分は意味が無い、つまり有効でない値になります。有効数字とは、その桁までは値を保証すると言うことなのですが、この例だと5桁までは保証できませんよね。なぜなら、小数第5位以降はどうなってるか分からないから。これが桁落ちです。

僕としては先生の言ってるように、1桁多くとって計算した所で、桁落ちの対策になるのか疑問です。先生が言いたかったのは誤差が生まれるということでは無いでしょうか?途中式で四捨五入して、有効数字に合わせてしまうと、計算が長くなればなるほど誤差が生まれるのは分かりますよね。それを防ぐために1桁多く取るってことが言いたかったような気がします。
    • good
    • 0

1.19×1.36×1.48=2.395・・・有効数字2桁での答=2.4



最初から有効数字2桁で計算すると
1.2×1.4×1.5=2.52・・・有効数字2桁での答=2.5

精度が違ってしまう。
    • good
    • 0

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

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