Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Округление на кратное число. (https://javascript.ru/forum/misc/46381-okruglenie-na-kratnoe-chislo.html)

ideveloper 08.04.2014 00:25

Округление на кратное число.
 
Ребята нужен Ваш совет и помощь.

Проблема такая:

есть курса обмена очков на баллы 3500 баллов = 1 очко

есть два поля. одно ввода баллов , другое для вывода очков соглсно курса

Есть минимальное значение ввода, оно равно 35 единицам.

при вводе минимального значение в поле вывода отображается значение 0.01 очков

если человек вводит меньше 35 то ему не дает, так как прописан минимум. Если вводить от 35 то все ок, Но беда в том что если вводить к примеру 53 ему округляет до 0,02 очков.

как можно сделать чтобы данный обмен был кратен 35. т.е. при вводе любого значения от 35 до 70 выдавало 0.01 очко, начиная с 70 и до 105 - 0.02 и так далее.

чтобы халявщики не вводили 53 и получали 0.02 вместо положенных 70

ideveloper 08.04.2014 00:26

Math.floor как я понимаю тут не подойдет. так как он все будет округлять до целых и таким образом при вводе 35 баллов он не выдаст 0.01 очко а округлит до 0

важно именно наличие сотых в дроби.

Octane 08.04.2014 00:40

alert(Math.floor(53 / 35) / 100);
alert(Math.floor(70 / 35) / 100);
alert(Math.floor(105 / 35) / 100);

danik.js 08.04.2014 00:43

Домножь на 100, отбрось дробную часть (Math.floor), затем обратно подели на 100. Помоему даже пятиклассник такую задачу осилит), хе хе)

ideveloper 08.04.2014 00:46

сейчас такой вид

document.getElementById("sum").value = (sum/rate).toFixed(2);

ideveloper 08.04.2014 00:47

danik.js, к сожалению я в этом не то что пятиклассник Я ДНО)))

ideveloper 09.04.2014 00:33

:(

Octane 09.04.2014 00:40

Я же тебе написал решение, что не так?

ideveloper 09.04.2014 01:15

оно выдает предупреждением. как я понимаю из-за алерта.
и не правильно рассчитывает все равно. у меня оно имеет сейчас такой вид:

document.getElementById("sum").value = (sum/rate).toFixed(2);

Sweet 09.04.2014 01:41

Сферический developer в вакууме:D

ideveloper 09.04.2014 02:17

:nono:

ideveloper 11.04.2014 00:31

:(

рони 11.04.2014 00:36

ideveloper, :cray:
document.getElementById("sum").value = Math.floor(sum/rate)/100;


Часовой пояс GMT +3, время: 00:21.