Задать вопрос
@entermix

Как округлить число только в большую сторону?

Есть массив чисел, например: 21749, 21751, нужно получить 21750, 21800 т.е. округлить исключительно в большую сторону.

echo round(21749, -1); // 21750
echo round(21751, -2); // 21800


Но что, если чисел много? Не выставлять же precision вручную. сделал так:

$numbers = array(21749, 21751,);

foreach ($numbers as $number) {
	$precision  = -1;
	do{
		$r = round($number, $precision);
		$precision += (-1);
	} while($r <  $number);
	echo ':' . $r . '<br/>';
}


Существуют ли другие способы "по феншую" ? Т.е. чтобы округлить в большую сторону не задавая количество знаков?
  • Вопрос задан
  • 382 просмотра
Подписаться 2 Оценить Комментировать
Решения вопроса 1
@Hello1
function up(num) {
  return Math.ceil(num/50)*50
}
up(21749); //21750
up(21750); //21750
up(21751); //21800
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
21749 до скольки знаков должно округляться? Можно получить 21750, 21800, 22000, 30000, 100000, 1000000, ... Как программа должна определить где остановиться?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы