Округлить число до следующего ВЫСОКОГО 10

Мне нужно создать график, на котором масштаб оси Y изменяется в зависимости от ввода данных в система. Возможно, эта шкала может быть где угодно от 0-10, 0-100 или даже иметь нижний предел в тысячи и верхний предел в миллионы.

Чтобы правильно определить масштаб этой оси, мне нужно определить отношение точек к пикселям (на основе высоты / диапазона графика). Теперь ось графиков никогда не начинается с наименьшего значения и не идет к наибольшему, обычная практика заключается в переходе к следующим ближайшим 2, 5 или 10 (вверху для верхнего предела и ниже для нижнего) в зависимости от диапазона значений.

Я хотел бы знать, как взять максимальное значение из набора данных и округлить его до ближайшего 10. для пояснения, входные значения будут всегда целыми числами.

Теперь у меня есть это

        if ((rangeMax < 10) && (rangeMax > 5))
            rangeMax = 10;
        else if (rangeMax < 5)
            rangeMax = 5;

, которое полезно только для значений меньше 10 и не позволяет гибкости, необходимой для того, чтобы быть действительно динамичным.В конечном итоге этот график будет автоматически сгенерирован во время события загрузки страницы, без каких-либо действий со стороны пользователя.

Я немного читал, и люди говорят о таких вещах, как оператор модуля (%), но я не могу найти никакой достоверной информации о его использовании, и говорят о Math.Ceiling и Math.Round, но эти перейти к следующему ближайшему целому числу, которого там нет и в любом случае, похоже, не очень помогает при работе с целыми числами. Приветствуются любые предложения, указатели или помощь.

Я нашел похожий вопрос, заданный здесь Как я могу получить следующее наивысшее кратное 5 или 10 , но я не знаю Java, поэтому я не могу понять ничего из того, что было сказано.

Ура

7
задан Community 23 May 2017 в 10:34
поделиться