PHPда бўлинманинг қолдиғини текшириш
Икки тағийирлимиз булиб, уларда сонлар сақлансин:
<?php
$a = 10;
$b = 3;
?>
Келинг, бир тағийирлини иккинчисига бўлгандаги қолдиқни топамиз:
<?php
$a = 10;
$b = 3;
echo $a % $b; // чиқади 1
?>
Энди тағийирлиларда шундай қийматлар сақлансинки, бир тағийирли иккинчисига бутунлиқда бўлинади:
<?php
$a = 10;
$b = 5;
echo $a % $b; // чиқади 0
?>
Келинг, бир сон иккинчисига бутунлиқда бўлинадими ёки йўқми, текширадиган скрипт язайлик:
<?php
$a = 10;
$b = 3;
if ($a % $b === 0) {
echo 'бутунлиқда бўлинади';
} else {
echo 'қолдиқ билан бўлинади';
}
?>
Энди агар сон қолдиқ билан бўлинса, шу қолдиқни экранда кўрсатиш талаб қилинсин:
<?php
$a = 10;
$b = 3;
if ($a % $b === 0) {
echo 'бутунлиқда бўлинади';
} else {
echo 'қолдиқ билан бўлинади ' . $a % $b;
}
?>
Юқорида келтирилган кодда қолдиқ икки жойда - ҳисобланади, бу эса оптимал эмас.
Муаммони тузатамиз:
<?php
$a = 10;
$b = 3;
$rest = $a % $b;
if ($rest === 0) {
echo 'бутунлиқда бўлинади';
} else {
echo 'қолдиқ билан бўлинади ' . $rest;
}
?>
Маълумки, жуфт сонлар 2 га қолдиқсиз
бўлинади, тоқ сонлар эса қолдиқ билан. Сизда
бир сон берилган булсин. % оператори ва
if конструкцияси ёрдамида уning жуфт
ёки тоқ эканлигини текширинг.
Бир сон берилган. Уning 3 га
бўлинади-ю бўлмаслигини текширинг.