PHPda bo'linma qoldig'i
Faraz qilaylik, bizda ikkita son saqlovchi o‘zgaruvchilar bor:
<?php
$a = 10;
$b = 3;
?>
Keling, bitta o‘zgaruvchini ikkinchisiga bo‘lganda qolgan qoldiqni topamiz:
<?php
$a = 10;
$b = 3;
echo $a % $b; // chiqaradi 1
?>
Endi esa o‘zgaruvchilarda shunday qiymatlar saqlansinki, ulardan biri ikkinchisiga qoldiqsiz bo‘linsin:
<?php
$a = 10;
$b = 5;
echo $a % $b; // chiqaradi 0
?>
Keling, bitta son ikkinchisiga qoldiqsiz bo‘linishini tekshiradigan skript yozamiz:
<?php
$a = 10;
$b = 3;
if ($a % $b === 0) {
echo "to'liq bo'linadi";
} else {
echo 'qoldiq qoladi';
}
?>
Endi esa, agar son qoldiq bilan bo‘linadigan bo‘lsa, ushbu qoldiqni ekranga chiqarish talab etiladi:
<?php
$a = 10;
$b = 3;
if ($a % $b === 0) {
echo "to'liq bo'linadi";
} else {
echo 'qoldiq qoladi ' . $a % $b;
}
?>
Yuqoridagi kodda qoldiq ikkita joyda hisoblanmoqda, bu esa optimal emas.
Muammoni hal qilamiz:
<?php
$a = 10;
$b = 3;
$rest = $a % $b;
if ($rest === 0) {
echo "to'liq bo'linadi";
} else {
echo 'qoldiq qoladi ' . $rest;
}
?>
№1
Ma’lumki, juft sonlar 2 ga qoldiqsiz, toq sonlar esa qoldiq bilan 2 ga bo‘linadi. Sizga qandaydir raqam berilsin. % operatori va if konstruktsiyasidan foydalanib, sonning juft yoki juft emasligini tekshiring.
№2
Qandaydir raqam beriladi. 3 ga bo'linishini tekshiring.