«1. Обзор

В этом кратком руководстве мы покажем, как округлить заданное число до ближайшей сотни.

Например: 99 становится 100 200,2 становится 300 400 становится 400

2. Реализация

Сначала мы вызовем Math.ceil() для входного параметра. Math.ceil() возвращает наименьшее целое число, которое больше или равно аргументу. Например, если ввод равен 200,2, Math.ceil() вернет 201.

Затем мы добавляем 99 к результату и делим на 100. Мы используем целочисленное деление, чтобы усечь десятичную часть частного. Наконец, мы умножаем частное на 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. Заключение

В этой быстрой статье мы показали, как округлить число до ближайшей сотни.

Как обычно, полный код доступен на GitHub.

«