Úloha 4 – Operátor modulo (%) – sudá a lichá čísla
| Site: | Moodle ZČU |
| Course: | Sada úloh pro procvičení v předmětu KVD/PGM1P (BP Vítek Dolný) |
| Book: | Úloha 4 – Operátor modulo (%) – sudá a lichá čísla |
| Printed by: | Guest user |
| Date: | Sunday, 18 October 2026, 9:59 AM |
Úvod do úlohy
Operátor modulo (%) patří k často používaným nástrojům při řešení reálných problémů. Nejde jen o „zbytek po dělení“, ale také o užitečný mechanismus pro rozhodování a opakující se vzory. Díky němu můžeme snadno detekovat sudost či lichost čísla, periodicky rotovat indexy v poli nebo vytvářet opakující se sekvence. Správné pochopení modula včetně jeho chování se zápornými čísly je zásadní pro to, aby kód fungoval spolehlivě a předvídatelně.
Teorie a principy
-
Základní chování:
a % bvrací zbytek po celočíselném dělení číslaačíslemb. -
Příklad:
10 % 3 = 1, protože10 = 3 * 3 + 1. -
Znaménko výsledku:
V JavaScriptu má výsledek stejné znaménko jako dělenec (levý operand).-
10 % 3 = 1 -
-10 % 3 = -1 -
10 % -3 = 1
-
-
Použití v rozhodování:
-
Sudost:
x % 2 === 0 -
Lichost:
x % 2 !== 0 -
Cyklické indexování:
index = (index + 1) % pole.length
-
Praktické příklady kódu
1) Sudá a lichá čísla
2) Cyklické indexování v poli
3) Modulo a záporná čísla
Pokud potřebujeme vždy kladný výsledek, můžeme použít úpravu:
Typické chyby / záludnosti
-
Předpoklad, že výsledek je vždy kladný: u záporných čísel to v JavaScriptu neplatí.
-
Záměna s celočíselným dělením:
%nevrací podíl, ale zbytek. -
Použití s nulou:
x % 0jeNaN. -
Nepochopení cykličnosti: studenti někdy řeší cyklické indexování složitými podmínkami místo jednoduchého
index % délka.
Shrnutí
-
Operátor
%vrací zbytek po dělení, se znaménkem podle dělence. -
Typická použití: sudost/lichost, cyklické indexování, periodické vzory.
-
Výsledek není vždy kladný, proto je nutné opatrně pracovat se zápornými čísly.
-
x % 0je neplatná operace → výsledkem jeNaN.
Úloha
Zadání (kontext úlohy)
Chceme zjistit, jestli je číslo sudé nebo liché. K tomu můžeme použít operátor modulo %, který vrací zbytek po dělení.
Cíl úlohy
Procvičíš si použití operátoru % při práci s čísly a podmínkami.
Vstupní podmínky
-
Pracuješ pouze s nově vytvořeným souborem
script.js.
Požadovaný výstup
-
Do proměnné ulož libovolné celé číslo.
-
Pomocí podmínky
ifzjisti, jestli je číslo sudé (zbytek po dělení 2 je 0) nebo liché. -
Výsledek vypiš do konzole (
console.log()) ve formátu:-
„Číslo X je sudé.“
-
„Číslo X je liché.“
-
Doplňující pokyny
-
Vyzkoušej program s několika různými čísly (kladnými i zápornými).
-
Dávej pozor na znaménko u záporných čísel – v JavaScriptu může být výsledek
%záporný, proto může být užitečné pracovat sMath.abs(cislo % 2).
Řešení úlohy
Co je zde splněno
-
Do proměnné (pole) je uloženo několik celých čísel pro vyzkoušení.
-
Použit operátor
%pro určení zbytku po dělení. -
Použita podmínka
ifpro zjištění, zda je číslo sudé nebo liché. -
Výsledek je vypsán do konzole ve správném formátu.
-
Ošetřena situace se zápornými čísly, aby vyhodnocení bylo konzistentní.
Poznámky
V JavaScriptu může být
-5 % 2 === -1. Proto je vhodné použít úpravu(x % 2 + 2) % 2, aby výsledek zůstal vždy 0 nebo 1.Pokud by se pracovalo jen s kladnými čísly, stačilo by jednoduše
if (x % 2 === 0).