round関数について
試しにエクセルで次の計算をしてみてください。
-16.76
7.9
-11.45
-8.88
-1
4.26
33.78
以上を全部足します。つまり「=sum(a1:a7)」です。当然「7.85」になります。
次に四捨五入します。round関数で小数点第2位を四捨五入して、第1位まで表示させます。つまり、「=round(sum(a1:a7),1)」ということです。すると「7.8」を返しました。
ん?「7.9」なのでは?と思い、次にこんな計算をしてみました。
A・・・=round(sum(a1:a7),2)
B・・・=round(A,1)
つまり、Aでいったん小数点第3位を四捨五入させた上で、その値を今度はBで小数点第2位を四捨五入させ、最終的に小数点第1位まで表示させたわけです。すると、ちゃんと「7.9」を返しました。
なんでこんな風になるのでしょうか?どうして一発で「7.9」にならないのでしょうか?