php: узнать, делится ли число на другое число без остатка
Чтобы узнать, делится ли число например на 4, условие будет выглядеть так:
(($num % 4) == 0)
Как пример:
<?php for ($num=1;$num<=100;$num++) { if (($num % 4) == 0) { echo "<b>".$num."</b> делится на 4<br/>"; } else { echo "<b>".$num."</b> не делится на 4<br/>"; } } ?>
Хотя правильнее для этого примера будет:
<?php for ($num=1;$num<=100;$num++) { echo "<b>".$num."</b> "; if (($num % 4) != 0) { echo "не "; } echo "делится на 4<br/>"; } ?>
@Николай
80/4=20, 80%4=0.
Разница в знаках. % выведет остаток от деления.
По вашему условию: 80/4 = 20, что не равно нулю. Т.е. 80 не делиться на 4?
Здесь необходим более тщательный анализ. Или использовать формулу признака делимости для каждого числа, либо высчитывать по функции приведенной Анонимом fmod() и в цикле продолжить высчитывать до числа меньшего делителя.
я думаю это сложно
Зачем ($num % 4) брать в скобки? Можно и без них. Код красивей будет просто if ($num % 4 == 0) вместо if (($num % 4) == 0)
fmod()