Как найти значение, ближайшее к ряду 1, 5, 10, 50, 100,...?JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Как найти значение, ближайшее к ряду 1, 5, 10, 50, 100,...?

Сообщение Anonymous »


Я хотел бы получить значение, наиболее близкое к следующему ряду:

1, 5, 10, 50, 100, 500, 1000, ...

Под «ближайшим к x» я подразумеваю «наибольшее значение в ряду, которое меньше или равно x». Мы можем предположить, что x всегда больше или равно 1.

Например:

1 : 1 2 : 1 9:5 10 : 10 27 : 10 33 : 10 49 : 10 52 : 50 86:50 Относительно легко сделать то же самое со степенью 10 (1, 10, 100, 1000, ...) :

int closeTo10(int value) { return (int)Math.pow(10.0, Math.floor(Math.log10(значение))); } Я изо всех сил пытаюсь сделать то же самое, что описано выше.

Возможная идея: взять значение, ближайшее к 5, 50, 500, 5000, 50000, ... (я не знаю, как это сделать)

Затем возьмите наименьшее из двух: Math.min(closestTo5(value), pestTo10(value))
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»