Как определить четное число или нет в php?

Пользователь

от greyson , в категории: PHP , 3 года назад

Как определить четное число или нет в php?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от rodger.botsford , 3 года назад

@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


Пользователь

от wilburn , 2 года назад

@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 - нечетное число
}


Оба этих способа работают хорошо для проверки целых чисел, но следует иметь в виду, что они могут дать неправильный результат для чисел с плавающей точкой.