@greyson Основной признак четного числа, если при деление на 2 остаток от деления равно 0. В этом случае нужно просто разделить заданной число на два и проверить, что остаток равен нулю, небольшая функцию проверки четного числа:
1 2 3 4 5 6 7 8 9 10 |
<?php function isNumberEven($number) { return 0 === $number % 2; } var_dump(isNumberEven(2)); // true var_dump(isNumberEven(4)); // true var_dump(isNumberEven(5)); // false |
Если нужно проверить наоборот, что число нечетное, то можно сделать проверку что остаток деления на 2 не равен 0:
1 2 3 4 5 6 7 8 |
function isNumberOdd($number) { return 0 !== $number % 2; } var_dump(isNumberOdd(2)); // false var_dump(isNumberOdd(4)); // false var_dump(isNumberOdd(5)); // true |
@greyson
В PHP есть несколько способов определить, является ли число четным или нечетным. Один из способов состоит в том, чтобы использовать оператор остатка %:
1 2 3 4 5 |
if ($number % 2 == 0) { // $number - четное число } else { // $number - нечетное число } |
Другой способ состоит в том, чтобы использовать функцию is_int()
в сочетании с функцией abs()
:
1 2 3 4 5 |
if (is_int(abs($number) / 2)) { // $number - четное число } else { // $number - нечетное число } |
Оба этих способа работают хорошо для проверки целых чисел, но следует иметь в виду, что они могут дать неправильный результат для чисел с плавающей точкой.