Проверка числа на четность и нечетность в php

Проверка числа на четность и нечетность. Введение

Проверка числа на четность и нечетность в phpВ работе, я уже неоднократно сталкивался с необходимостью проверки числа на четность и нечетность, но почему-то не придавал этому особого значения, поэтому не затрагивал данную тему ранее. Но мне уже несколько раз присылали вопросы и просили помочь с задачами, в которых проверка четности числа может помочь в реализации. Поэтому я решил описать проблему и решение в статье.
Рассмотрим самую распространенную задачу, в которой проверка четности числа может все расставить на свои места. Допустим, у нас имеется массив данных, в котором хранится имена и фамилии людей. Необходимо вывести эти данные таким образом, чтобы каждое имя и фамилия начинались с новой строки и каждая вторая строка имела отступ 20 пикселей.

Решение задачи:
Необходимо при выводе каждого элемента массива считать номер элемента, если он четный, то есть 2, 4, 6 и тд, то будем делать отступы.

Проверка числа на четность и нечетность. Код

// массив данных
$array_users = array(
	"Иван Иванов",
	"Иван Петров",
	"Петр Иванов",
	"Петр Петров",
	"Сидор Иванов",
	"Сидор Петров"
);

// вывод данных
$num = 1;
foreach($array_users as $value){
	// проверяем четность
	if(($num % 2) == 0){
		// если четное, то делаем отступ 
		echo "<span style='padding-left: 20px;'>$value</span><br/>";
	}else{
		// если не четное, то просто выводим
		echo "<span>$value</span><br/>";
	}
	$num ++;
}

Задача решена.

Вся суть сводится к тому, что необходимо проверить остаток от деления числа на два. если остаток равен нулю, значит число четное.

$a = 5;
if(($a % 2) == 0){
	echo "Число четное";
}else{
	echo "Число не четное";
}

С помощью такого же кода, можно добавлять стили для каждого третьего, каждого четвертого и тд элемента, только уже сравнивать остаток после деления на 2, 3, 4 и тд.

Рассказать друзьям:


Оценить:
(15 оценок, среднее: 4,40 из 5)

Проверка числа на четность и нечетность в php: 2 комментария

  1. if(($a % 2) == 0)
    Я так понимаю, что если будет возвращаться ноль, то в IF это будет считаться FALSE, а значит код ещё короче можно сделать.

  2. Есть способ гораздо эффективнее. У нечётных чисел самый младший бит = 1, у чётных — 0.

    function IsOdd($_iNumber)
    // Проверяет число на нечётность.
    {
    return $_iNumber & 1;
    }

    function IsEven($_iNumber)
    // Проверяет число на чётность.
    {
    return !($_iNumber & 1);
    }

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*

code