logo

Modulový operátor v C/C++

Před pochopením modulu operátor , musíme o termínu vědět operátor . Při programování symbol operátora říká kompilátoru, aby provedl určitou operaci s daným číslem na základě předané operace.

Používá se k provádění různých operací (+, -, *, /) s čísly. Pomáhá zlepšit logické a matematické schopnosti programátora použitím různých operátorů v programu. Kromě těchto čtyř základních operátorů existují ještě další operátoři jako např operátor modulu (%), operátor rozlišení rozsahu (::) atd.

normální formy

V této části se zaměříme na operátor modulu.

Modulový operátor v C/C++

Co je modulový operátor v C a C++?

The operátor modulu je symbol používaný v různých programovacích jazycích. Označuje se symbolem procent ( % ). Je to modulový operátor, který se používá v aritmetickém operátoru. Určuje zbytek. V některých případech může být zbytek 0, to znamená, že číslo je zcela dělitelné dělitelem.

Syntax:

 rem = a % b 

Ve výše uvedené syntaxi jsou aab dvě celá čísla a the % Symbol (procenta) je modulový operátor, který dělí a b a vrací zbytek.

Návratové možnosti operátora modulu

Následují možnosti, kdy se první číslo vydělí druhým číslem a vrátí se pouze hodnota zbytku.

  1. Pokud je proměnná a zcela dělitelná druhým číslem (b), vrátí nulu (0) nebo zbytek bude 0.
  2. Pokud proměnná a není zcela dělitelná druhým číslem (b), vrací číselnou hodnotu v rozsahu [1, a - 1]. Nebo můžeme říci, že vrací zbytek na nenulovou celočíselnou hodnotu.
  3. Pokud je první číslo (a) nenulové a druhé číslo je 0, při kompilaci dojde k chybě.

Jak funguje Modulus Operator v C/C++?

Modulový operátor pracuje se dvěma operandy přijatými koncovým uživatelem. Poté vydělí první číslo druhým číslem a určí zbytek. Pojďme pochopit následující příklad, který ilustruje funkčnost operátoru modulu.

Příklad : Když provedeme modulový operátor mezi 8 a 5, což znamená 8 % 5, vrátí zbytek 3, protože když je 8 děleno 5, vrátí 1 jako podíl a 3 jako zbytek.

Podobně 7 % 2 vrátí 1 jako zbytek, protože když je 7 děleno 2, vrátí 3 jako podíl a 1 jako zbytek.

Příklad 1: Napište program pro implementaci Modulus Operator v C.

Mode.c

operátory v programování v pythonu
 #include #include void main() { int a, b; int res; // store the resultant of modulus expression a = 5; b = 2; res = a % b; // define modulus expression printf(' Modulus returns a remainder: %d', res); res = b % a; // define modulus expression printf(' 
 Modulus returns a remainder: %d', res); a = 10; b = 5; res = a % b; // define modulus expression printf(' 
 Modulus returns a remainder: %d', res); getch(); } 

Výstup:

 Modulus returns a remainder: 1 Modulus returns a remainder: 2 Modulus returns a remainder: 0 

Poznámka: Když vydělíme číslo s plovoucí čárkou jiným číslem, vrátí chybu kompilovaného časovače jako neplatný operand. Můžeme tedy říci, že nefunguje s plovoucím číslem.

Program pro implementaci modulového operátoru v C++.

operační systémy mac

Mode3.cpp

 #include using namespace std; int main(void) { int a, b; int res; // store the resultant of modulus expression a = 5; b = 2; res = a % b; // modulus expression cout &lt;<' modulus returns a remainder: ' << res; res="b" % a; expression cout <<'
 b="5;" b; return 0; } < pre> <p> <strong>Output:</strong> </p> <pre> Modulus returns a remainder: 1 Modulus returns a remainder: 2 Modulus returns a remainder: 0 </pre> <h2>Modulus Operator in C++</h2> <p> <strong>Mode4.cpp</strong> </p> <pre> #include using namespace std; int main(void) { int a, b; int res; // store the result of modulus expression a = -5; b = 2; res = a % b; // modulus expression cout &lt;<' modulus returns a remainder: ' << res; b="-3;" res="a" % b; expression cout <<'
 return 0; } < pre> <p> <strong>Output:</strong> </p> <pre> Modulus returns a remainder: -1 Modulus returns a remainder: 2 Modulus returns a remainder: -1 </pre> <h3>Chaining of Modulus Operator</h3> <p>We can use the Chaining of Modulus Operator to perform modular division on more than two operands in a single statement. Following is the pseudo-code for the chaining of modulus operator, as given below.</p> <pre> res = operand1 % operand2 % operand3 % .... % operand_n </pre> <p>Let&apos;s consider the program of Chaining of Modulus Operator to take more than two operands.</p> <p> <strong>Mode5.cpp</strong> </p> <pre> #include using namespace std; int main() { // Use of modulus operator in C++ int x = 14; int y = 6; int z = 3; int modulo = x % y % z; // x % y returns 2, and 2 % z returns 2 cout &lt;&lt; &apos;Modulus is : &apos;&lt;&lt; modulo; } </pre> <p> <strong>Output:</strong> </p> <pre> Modulus is: 2 </pre> <hr></'></pre></'>

Modulový operátor v C++

Mode4.cpp

 #include using namespace std; int main(void) { int a, b; int res; // store the result of modulus expression a = -5; b = 2; res = a % b; // modulus expression cout &lt;<\' modulus returns a remainder: \' << res; b="-3;" res="a" % b; expression cout <<\'
 return 0; } < pre> <p> <strong>Output:</strong> </p> <pre> Modulus returns a remainder: -1 Modulus returns a remainder: 2 Modulus returns a remainder: -1 </pre> <h3>Chaining of Modulus Operator</h3> <p>We can use the Chaining of Modulus Operator to perform modular division on more than two operands in a single statement. Following is the pseudo-code for the chaining of modulus operator, as given below.</p> <pre> res = operand1 % operand2 % operand3 % .... % operand_n </pre> <p>Let&apos;s consider the program of Chaining of Modulus Operator to take more than two operands.</p> <p> <strong>Mode5.cpp</strong> </p> <pre> #include using namespace std; int main() { // Use of modulus operator in C++ int x = 14; int y = 6; int z = 3; int modulo = x % y % z; // x % y returns 2, and 2 % z returns 2 cout &lt;&lt; &apos;Modulus is : &apos;&lt;&lt; modulo; } </pre> <p> <strong>Output:</strong> </p> <pre> Modulus is: 2 </pre> <hr></\'>

Řetězení operátora modulu

Můžeme použít Chaining of Modulus Operator k provedení modulárního dělení na více než dvou operandech v jediném příkazu. Následuje pseudokód pro řetězení operátoru modulu, jak je uvedeno níže.

 res = operand1 % operand2 % operand3 % .... % operand_n 

Uvažujme program Chaining of Modulus Operator tak, aby měl více než dva operandy.

Mode5.cpp

 #include using namespace std; int main() { // Use of modulus operator in C++ int x = 14; int y = 6; int z = 3; int modulo = x % y % z; // x % y returns 2, and 2 % z returns 2 cout &lt;&lt; &apos;Modulus is : &apos;&lt;&lt; modulo; } 

Výstup:

 Modulus is: 2