Menu

四捨五入の計算機

両隣の数、正確な差、そして同距離のときに各規約が出す答え。

著者 Nethanel Bar, 共同創業者兼CEO

最終更新

計算ツールなしで解けるようになりたいですか?

Coddy の数学コースは解き方そのものを教えます。対話式のボードで一手ずつ進め、どこで手順が狂ったのかを正確に教えてくれます。

丸めは規則ではなく比較

数を丸めるのに必要なのは候補が二つだけです。選んだ桁の倍数のうちすぐ下のものと、すぐ上のもの。3.472 を小数第一位に丸めるなら 3.4 と 3.5 の間にあり、前者より 0.072 上、後者より 0.028 下 - だから 3.5 が勝ちます。「次の桁を見て5以上なら上げる」はまさにこの比較の近道で、しかも非常によい近道です。

近道が本当の判断になるのは、ちょうど真ん中 - どちらの隣も近くないときだけです。そこでは答えが本当に規約次第になり、よく使われるものが6つあります。学校の丸めは同距離を0から遠ざけ、銀行は偶数の隣へ送り、表計算のFLOORはつねに下へ行き、切り捨ては残りをただ捨てます。このページはあなたの数について6つを並べて見せます。丸めのページが答えるべき問いはそれだからです。

そもそも同距離を見るには正確な計算が要ります。二進の浮動小数点では 2.675 は実際には 2.67499999999999982… であり、だからほぼすべての電卓・表計算・プログラミング言語がこれを 2.67 に丸め、同距離ではなかったと主張します。ここでは数を正確な分数として保つので 2.675 は同距離であり、ページはそう言い、記事はあなたの別の電卓がなぜ違う答えを出したのかを説明します。

ここに注目

  • 両隣はつねに、丸める桁の倍数です。十の位に丸めるなら 1270 と 1280、小数第二位なら 2.67 と 2.68。
  • 大事なのは距離だけで、数字そのものではありません。桁の規則が働くのは、5以上の数字が区間の遠い半分をまさに意味するから - 別の法則ではなく比較の略記です。
  • 有効数字は小数点からではなく、0でない最初の桁から数えます。0.004567 を有効数字2桁にすると 0.0046 - 先頭の0は位取りで、有効数字ではありません。
  • 規約が食い違うのは同距離のときだけ。それ以外では上げ・偶数・下げのどれも同じ答えになり、だから複数の規則があると気づく人はほとんどいません。
  • 学校の規則は「0から遠ざける」で、「正の無限大へ」ではありません。だから -2.5 はこれで -3 になり、天井関数なら -2 になります。
  • 二度丸めるのは一度丸めるのと違います。2.446 を小数第二位にすると 2.45、それを第一位にすると 2.5 - でも元の数を直接第一位に丸めると 2.4 です。

数を丸める手順

  1. 何に丸めるか決める

    小数点以下の桁数、位(十・百)、または有効数字の桁数。以降の作業はどれを選んでも同じです。

  2. 両隣を見つける

    その桁の倍数で、あなたの数のすぐ下のものとすぐ上のもの。3.472 を小数第一位なら 3.4 と 3.5 です。

  3. どちらが近いか見る

    距離を比べる(0.072 対 0.028)か、近道を使う: その桁の次の数字を見て5以上なら上げる。どちらも同じ問いに答えています。

  4. ちょうど真ん中なら規約を適用する

    学校の規則は0から遠ざけます: 2.5 は 3 へ、-2.5 は -3 へ。統計や銀行では偶数の隣へ丸めることが多く、2.5 は 2 へ、3.5 は 4 へ行きます。

  5. 丸めた桁を残す

    1274 を百の位に丸めると 1300 で、13 ではありません。0は意味を担っています - 答えがどの桁まで正確かを語っています。

同じ数を四通りに丸めると

学校の丸め(5以上は上げ)を各桁に適用。動かない数に注目してください。それらはすでにその桁の正確な倍数です。

小数1桁小数2桁十の位有効2桁
3.4723.53.4703.5
2.6752.72.6802.7
12741274127412701300
0.0045670000.0046
-2.5-2.5-2.50-2.5
9.96109.961010
0.50.50.500.5
149.5149.5149.5150150

解いてみる

3.472 を小数第一位に

plain
3.472

両隣は 3.4 と 3.5。距離は 0.072 と 0.028 なので 3.5 が近く、それが答えです。近道も同意します: 小数第一位の次は 7 で5以上だから上げる。丸め誤差は 0.028 - 「小数第一位まで」の代金です。

どの電卓も見ない同距離: 2.675 を小数第二位に

plain
2.675

正確に保てば、この数は 2.67 と 2.68 のちょうど中間にあります。学校の丸めは 2.68 に上げ、銀行は偶数の隣、やはり 2.68 に送り、下げる規約なら 2.67。あなたのスマホはほぼ確実に 2.67 と言います。二進では 2.675 が半分より少し小さく保存されるからです。

負の同距離: -2.5 を整数に

plain
-2.5

学校の規則は数字に対して働くので0から遠ざけ、-3 になります。天井関数は正の無限大へ向かい -2、床関数は -3、切り捨ては .5 を捨てて -2。どれも擁護できる四つの答え - だからこそ規約を明示する必要があります。

有効数字: 0.004567 を2桁に

plain
0.004567

数え始めは 4 なので、有効数字2桁は 4 と 6、決めるのは続く 7 です: 上げて 0.0046。先頭の三つの0は有効数字ではなく、数がどこにあるかを示す位取りです。

繰り上がりが伝わるとき: 9.96 を小数第一位に

plain
9.96

両隣は 9.9 と 10.0 で、9.96 は後者に近いので答えは 10 - 繰り上がりが一の位まで波及します。丸める桁の前の数字まで変わるので、ここでつまずく人が多い場面です。

することがない: 149.5 を小数第一位に

plain
149.5

149.5 はすでに 0.1 の正確な倍数なので選ぶ両隣がなく、丸め誤差0のまま返ります。十の位ならば話は別で、そちらは本当の同距離であり、学校の丸めは 150 を与えます。

よくある間違い

  • 段階的に丸める。毎回もとの数から丸めてください: 2.446 を小数第二位にしてから第一位にすると 2.5 ですが、直接第一位に丸めると 2.4 です。
  • 位取りの0を落とす。1274 を百の位に丸めると 1300 で、13 と書けば数は100倍ずれます。
  • 有効数字を小数点から数える。0.004567 の最初の有効数字は 4 なので、有効数字2桁は 0.0046 であって 0.00 ではありません。
  • 電卓の同距離での振る舞いを数学だと思う。表計算のROUNDは同距離を0から遠ざけ、Pythonのround()は偶数へ丸めます。どちらも擁護でき、争点は規約です。
  • 負の数で「切り上げ」を「正の無限大へ」と読む。学校の規則では -2.5 は -3 になります。桁の規則は大きさを見て符号を無視するからです。
  • 丸めた数が近似だと忘れる。3.5 と書いた時点で 0.028 は永久に失われます - だから丸めるのは計算の最後で、途中では決してしないこと。

丸めについてよくある質問

小数の桁に丸めるにはどうしますか?
欲しい桁の次の数字を見ます。5以上なら上げ、そうでなければ下げます。3.472 を小数第一位なら次の数字が 7 なので答えは 3.5。同じことをより正直に言えば、3.4 と 3.5 のうち近い方を選ぶということです。
5 はいつも切り上げですか?
学校で教わる規則ではそうです - そして単独の 5 はまさに両隣が等距離になる場合なので、この規則は事実ではなく規約です。偶数の隣へ、下へ、あるいは0へ向けて丸める規約も広く使われています。
銀行家丸めとは何で、なぜあるのですか?
半分を偶数へ丸める方式です。同距離は偶数の隣へ行くので 2.5 は 2、3.5 は 4 になります。同距離をいつも上げると長い数字の列が上へ偏りますが、半分を下げればその偏りが打ち消されます。IEEE浮動小数点や複数の統計パッケージの既定値です。
有効数字に丸めるには?
小数点ではなく0でない最初の桁から数え、その桁で丸めます。0.004567 を有効数字2桁にすると 0.0046、123456 を3桁にすると 123000。このページはその桁がどこに来るかを求めてから普通に丸めます。
なぜ私の電卓は 2.675 が 2.67 に丸まると言うのですか?
それが 2.675 を持っていなかったからです。二進浮動小数点ではこの値は 2.67499999999999982… として保存され、本当に中間より下にあります。つまり電卓は自分が持つ数を正しく丸めています。このページは数を正確な分数として保つので、電卓には見えない同距離が見えます。
負の数はどう丸まりますか?
規約によります。だからこそこのページは6つすべてを見せます。学校の桁の規則は0から遠ざけ、-2.5 では -3。天井は正の無限大へ(-2)、床は負の無限大へ(-3)、切り捨ては0へ(-2)向かいます。
丸めと切り捨ての違いは?
切り捨てはその桁より後を中身にかかわらず捨てます: 3.99 を整数に切り捨てると 3。丸めは近い隣を選ぶので 3.99 は 4 になります。切り捨ては速く、つねに0へ偏るので、ループカウンタでは問題なく、お金では危険です。
計算のどこで丸めるべきですか?
いちばん最後です。途中の値を丸めるとまだ必要な情報を捨てることになり、誤差が積み上がります。これらのページの正確な答えが、あなたが小数を求めるまで分数を分数、根号を根号のまま保つ理由もそれです。

ほかの数学ツール

Coddy programming languages illustration

Coddyで数学を学ぼう

始める