S_a_k_Uの日記みたいなDB

~サクゥーと呼ばないで~

四捨五入の続き

ってそれはそれでいいんだけど、


負の数の四捨五入ってこれでいいの(爆


てっきり数直線で考えた感じでは、正の数の場合は切り上げで右方向へ、負の数の場合は切り上げで左方向へ、切り捨てはその逆って思ってたけど。
で、同じような疑問に対していろんな答えがあるようでw
自分の思ってたのは選択肢のA2かな?


ということでコードを改造してみた。

double[] val = { -5.5d, -5.0d, -4.5d, -4.0d, -3.8d, -3.5d, -3.3d, -3.0d, -2.5d, -2.0d, -1.5d, -1.0d, -0.5d
		, 0.0d, 0.5d, 1.0d, 1.5d, 2.0d, 2.5d, 3.0d, 3.3d, 3.5d, 3.8d, 4.0d, 4.5d, 5.0d, 5.5d };
		
for ( int i = 0 ; i < val.length ; i++ ) {
    System.out.println("[round] " + val[i] + " - > " + Math.round(val[i]));
    System.out.println("[rint]  " + val[i] + " - > " + Math.rint(val[i]));
    System.out.println("[ceil]  " + val[i] + " - > " + Math.ceil(val[i]));
    System.out.println("[floor] " + val[i] + " - > " + Math.floor(val[i]));
}

で、-1.5の結果は、

[round] -1.5 - > -1
[rint] -1.5 - > -2.0
[ceil] -1.5 - > -1.0
[floor] -1.5 - > -2.0

ここの選択肢のA1に相当するみたい。


会社で赤字の場合どう処理しているか聞いてみようかwww