Modul C++

Modul C



V mnoha programovacích jazycích často používáme operátor s názvem „modulus“ se symbolem znázorněným jako „%“. Tento modulový operátor se používá k nalezení zbytku, když jsou dvě číselná celá čísla nebo čísla navzájem dělena. Tento operátor má dva operandy: dělitel a dělitel. Po jejich dělení zbyde zbytek, X % Y = R; kde X a Y jsou dividendy a dělitelé a R je zbytek. Tento zbytek používáme jako informaci, pokud chceme vědět, zda dvě dělící čísla jsou faktory každého či nikoli. Zbytek také používáme k tomu, abychom věděli, zda je číslo sudé nebo liché.

Postup
Existuje několik použití operátoru modulu, který používáme pro různé funkce v programovacím jazyce. Pro různé příklady provedeme modul pro různé funkce. Každý příklad nás stručně informuje o různém použití operátoru modulu. Pojďme se tedy vrhnout na řešení příkladů pro „C++ Modulus Operator“.

Příklad #01
V prvním příkladu se seznámíme se syntaxí operátoru modul a vyřešíme jednoduchý příklad operátoru Modulus. Pro tento účel použijeme operátor modulu na dělitel i dělitel se stejnými datovými typy, tj. celé číslo „int“. Budeme definovat dvě proměnné, řekněme x & y jako celá čísla. Potom těmto celým číslům přiřadíme nějakou náhodnou hodnotu. Po přiřazení hodnoty použijeme modulový operátor na tyto dvě hodnoty jako „dělitel % dividend“ a uložíme jej do nějaké jiné proměnné. Poté tuto proměnnou zobrazíme pomocí funkce tisku.









Výstup:



Zbytek ve výstupu vrátil hodnotu rovnou nule. To znamená, že x bylo zcela dělitelné y. X je tedy faktor y.





Příklad #02
V tomto druhém příkladu se naučíme, jak můžeme použít modulový operátor v řetězci k výpočtu modulu více než dvou proměnných. Nejprve definujeme datový typ proměnných. V tomto případě vezmeme tři proměnné a vypočítáme jejich modul řetězce. Náhodně vyberte tři proměnné, např. x, y, z se stejnými datovými typy jako celá čísla, a inicializujte je přiřazením různých hodnot každé proměnné. Poté použijte modulový operátor na tyto tři proměnné jako 'x% y% z'. Zobrazte jej pomocí „cout <<“. To lze provést spuštěním následujícího kódu v editoru kódu:



Výstup:

Modul x % y, což je 13 % 5, vyšel jako 3 a modul (x % y) % z, tj. (3) % 2 je 1. To je důvod, proč náš výstup vyšel přesně roven jedné.

Příklad #03
Aplikovali jsme modul na proměnnou se stejnými datovými typy nebo datovými typy, jejichž kombinace je v pořádku s operátorem modulu. V tomto příkladu se naučíme omezení provozu operátoru modulu. Operátor modulu nefunguje na datových typech float a double. Pro ověření si zkusme příklad, kde nadefinujeme dvě proměnné s datovým typem float a použijeme na ně modul. Výsledky jsou vidět v následujícím výstupu.

V příkladu, kdy jsme použili float jako datový typ dvou proměnných „a“ a „b“ a přiřadili jim plovoucí hodnoty, např. 13,4 respektive 5,5. Operátor modulu nefungoval dobře u těchto dvou proměnných a měl chyby při kompilaci ukazující na datový typ float.

Příklad #04
Pomocí operátoru modulu můžeme také zjistit, zda je číslo sudé nebo liché. Tuto funkci můžeme použít v aplikacích, kde chceme kontrolovat určité liché a sudé hodnoty. Abychom našli sudé číslo, jednoduše vezmeme modul tohoto čísla o 2. Pokud zbytek vyjde na 1 nebo jakékoli jiné číslo než 0, je číslo naopak liché. Pokud zbytek vyjde na 0, je číslo sudé. Pokusili jsme se implementovat tento koncept pomocí kódu uvedeného níže:

Výstup:

Celému číslu „a“ byla přiřazena hodnota 4 a jeho modul byl dán 2. Zbytek vedl k nule, což znamená, že „a“ je sudé číslo.

Příklad #05
Tento příklad ukáže, jak můžeme použít modulový operátor režimu operátora, pokud chceme generovat některá celá čísla, která jsou menší než konkrétní hodnota nebo celé číslo. Použijeme funkci rand, jejíž hodnotu pak použije operátor modulu ke spárování s požadovanou horní hranicí zadané maximální hodnoty. Nejprve naimportujeme všechny důležité knihovny jako:

$ #include
$ #include
$ #include

Pomocí jmenného prostoru std budeme importovat vector, endl (k příkazu end), cout (k zobrazení) a cin. Po tomto kroku definujeme maximální limit, který je v tomto příkladu 1000. Poté nastavíme, kolik čísel chceme vygenerovat, která by se rovnala 10. V hlavním spustíme index až do maxima limit a vygeneruje čísla pomocí funkce rand spárováním vrácené hodnoty s modulem maximálního limitu a zobrazí výstup.

Výstup:

Výše uvedený kód vygeneroval výstup, kde bylo vygenerováno deset čísel, která jsou menší než tisíc, protože jsme definovali maximální limit vygenerovaných čísel na méně než tisíc a celkem deset v číslech.

Závěr

Pomocí této příručky můžeme zjistit, co přesně je modulový operátor, jaká je jeho syntaxe a jak můžeme najít použití modulového operátoru v různých aplikacích. Řešili jsme různé příklady související s různým použitím modulového operátoru v aplikacích C++. Dále jsme se dozvěděli o omezeních operátora modulu.