Kontrola zbytku po dělení v PHP
Předpokládejme, že máme dvě proměnné s čísly:
<?php
$a = 10;
$b = 3;
?>
Pojďme najít zbytek po dělení jedné proměnné druhou:
<?php
$a = 10;
$b = 3;
echo $a % $b; // vypíše 1
?>
Nyní předpokládejme, že proměnné obsahují takové hodnoty, že jedna proměnná je dělitelná druhou beze zbytku:
<?php
$a = 10;
$b = 5;
echo $a % $b; // vypíše 0
?>
Napišme skript, který bude kontrolovat, zda je jedno číslo dělitelné druhým beze zbytku:
<?php
$a = 10;
$b = 3;
if ($a % $b === 0) {
echo 'dělitelné beze zbytku';
} else {
echo 'dělitelné se zbytkem';
}
?>
Nyní předpokládejme, že je potřeba, pokud je číslo dělitelné se zbytkem, vypsat tento zbytek na obrazovku:
<?php
$a = 10;
$b = 3;
if ($a % $b === 0) {
echo 'dělitelné beze zbytku';
} else {
echo 'dělitelné se zbytkem ' . $a % $b;
}
?>
V uvedeném kódu se stává, že zbytek je počítán na dvou místech, což není optimální.
Pojďme problém opravit:
<?php
$a = 10;
$b = 3;
$rest = $a % $b;
if ($rest === 0) {
echo 'dělitelné beze zbytku';
} else {
echo 'dělitelné se zbytkem ' . $rest;
}
?>
Jak je známo, sudá čísla jsou dělitelná 2
beze zbytku, zatímco lichá - se zbytkem. Předpokládejme,
že máte dané číslo. Pomocí operátoru %
a konstrukce if zkontrolujte, zda je
toto číslo sudé nebo ne.
Je dáno číslo. Zkontrolujte, že je dělitelné
3.