1.概要

この簡単なチュートリアルでは、

指定された数を最も近い100

に切り上げる方法を説明します。

たとえば、

99



100



200.2



300



400



400

となります。

2.実装

まず、入力パラメータで

Math.ceil()

を呼び出します。


Math.ceil()

は、引数以上の最小の整数を返します

たとえば、入力が200.2の場合、

Math.ceil()

は201を返します。

次に、結果に99を加えて100で除算します。整数https://docs.oracle.com/javase/specs/jls/se7/html/jls-15.html#jls-15.17.2を使用しています。

商の小数部分を切り捨てる

最後に、必要な出力を得るために商に100を掛けます。

これが私たちの実装です。

static long round(double input) {
    long i = (long) Math.ceil(input);
    return ((i + 99)/100) **  100;
};

3.テスト

実装をテストしましょう。

@Test
public void givenInput__whenRound__thenRoundUpToTheNearestHundred() {
    assertEquals("Rounded up to hundred", 100, RoundUpToHundred.round(99));
    assertEquals("Rounded up to three hundred ", 300, RoundUpToHundred.round(200.2));
    assertEquals("Returns same rounded value", 400, RoundUpToHundred.round(400));
}

4.まとめ

この簡単な記事では、数を四捨五入する方法を説明しました。

いつも通り、完全なコードはhttps://github.com/eugenp/tutorials/tree/master/algorithms-miscellaneous-2[the the GitHub]から入手できます。