y=round⁡(x)y = \operatorname{round}(x)

四捨五入 y=round⁡(x)y = \operatorname{round}(x) のグラフ

y=round⁡(x)y = \operatorname{round}(x) は xx に最も近い整数へ丸める関数で、日本語の四捨五入にあたります1。小数部分が 0.50.5 未満なら切り捨て、0.50.5 より大きければ切り上げます。

xxround⁡(x)\operatorname{round}(x)
2.32.322
2.62.633
−1.2-1.2−1-1
−1.6-1.6−2-2

定義域と値域

定義域はすべての実数で、値域は整数全体です。グラフは幅 11 の水平な線分が並ぶ階段状で、各段は整数を中心とした区間の上にあります。

区間値
−0.5<x<0.5-0.5 < x < 0.500
0.5<x<1.50.5 < x < 1.511
1.5<x<2.51.5 < x < 2.522

床関数や天井関数では段の切れ目が整数にありましたが、四捨五入では半整数にあります。段が整数を中心に置かれるぶん、丸めの誤差が最も小さくなります。

不連続点と丸めの規約

ちょうど中間の値である半整数 x=n+0.5x = n + 0.5 で不連続になり、値が 11 跳ね上がります。この中間の点をどちらへ丸めるかは規約によって決まります。

規約round⁡(0.5)\operatorname{round}(0.5)round⁡(1.5)\operatorname{round}(1.5)round⁡(2.5)\operatorname{round}(2.5)
0.50.5 を切り上げ112233
偶数丸め(銀行丸め)002222

統計や会計では、切り上げに偏るのを避けるために偶数丸めがよく使われます。負の数や中間値の扱いは実装によって異なるので、確かめてから使うのが安全です。

対称性

半整数を除けば round⁡(−x)=−round⁡(x)\operatorname{round}(-x) = -\operatorname{round}(x) が成り立ち、原点に関しておおむね点対称です。中間の点だけは、丸めの規約しだいで対称性が崩れることがあります。

他の関数との関係

0.50.5 を切り上げる方式では、床関数を使って次のように書けます。

round⁡(x)=⌊x+0.5⌋\operatorname{round}(x) = \lfloor x + 0.5 \rfloor

つまり四捨五入は床関数・天井関数の兄弟のような関数で、⌊x⌋\lfloor x \rfloor と ⌈x⌉\lceil x \rceil のうち xx に近いほうを選ぶことに相当します。

xx⌊x⌋\lfloor x \rfloor⌈x⌉\lceil x \rceilround⁡(x)\operatorname{round}(x)
2.32.3223322
2.72.7223333
−1.2-1.2−2-2−1-1−1-1

応用

  • 金額の表示
  • 測定値の桁合わせ
  • デジタル信号の量子化

連続した値を扱いやすい整数へ丸める場面で広く使われます。

  1. Rounding、Wikipedia