logo

Operatore modulo in C/C++

Prima di capire il modulo operatore , dobbiamo conoscere il termine operatore . Nella programmazione, il simbolo dell'operatore indica al compilatore di eseguire una particolare operazione su un determinato numero in base all'operazione passata.

Viene utilizzato per eseguire diverse operazioni (+, -, *, /) sui numeri. Aiuta a migliorare le capacità logiche e matematiche del programmatore utilizzando vari operatori nel programma. Oltre a questi quattro operatori di base, ci sono altri operatori come operatore modulo (%), operatore di risoluzione dell'ambito (::), ecc.

unisci l'ordinamento in Java

In questa sezione ci concentreremo su operatore modulo.

Operatore modulo in C/C++

Qual è l'operatore modulo in C e C++?

IL operatore modulo è un simbolo utilizzato in vari linguaggi di programmazione. È indicato dal simbolo di percentuale ( % ). È un operatore modulo utilizzato nell'operatore aritmetico. Determina il resto. In alcuni casi, il resto può essere 0, il che significa che il numero è completamente divisibile per il divisore.

Sintassi:

 rem = a % b 

Nella sintassi precedente, aeb sono due numeri interi e the % Il simbolo (percentuale) è un operatore modulo che divide a per b e restituisce il resto.

Possibilità di rendimento dell'operatore modulo

Di seguito sono riportate le possibilità in cui il primo numero viene diviso per il secondo numero per restituire solo un valore residuo.

  1. Se la variabile a è completamente divisibile per il secondo numero (b), restituisce zero (0) oppure il resto diventa 0.
  2. Se la variabile a non è completamente divisibile per il secondo numero (b), restituisce un valore numerico compreso nell'intervallo [1, a - 1]. Oppure possiamo dire che restituisce il resto a un valore intero diverso da zero.
  3. Se il primo numero (a) è diverso da zero e il secondo numero è 0, viene generato un errore in fase di compilazione.

Come funziona l'operatore modulo in C/C++?

L'operatore modulo funziona con due operandi ricevuti dall'utente finale. Successivamente divide il primo numero per il secondo e determina il resto. Comprendiamo il seguente esempio che illustra la funzionalità dell'operatore modulo.

Esempio : Quando eseguiamo l'operatore modulo tra 8 e 5, significa 8 % 5, restituisce il resto 3 perché quando 8 viene diviso per 5, restituisce 1 come quoziente e 3 come resto.

Allo stesso modo, 7 % 2 restituisce 1 come resto perché quando 7 viene diviso per 2, restituisce 3 come quoziente e 1 come resto.

Esempio 1: scrivere un programma per implementare l'operatore modulo in C.

tutorial di java

Modalità.c

 #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(); } 

Produzione:

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

Nota: quando dividiamo un numero float per un altro numero, restituisce l'errore del timer compilato come operando non valido. Quindi, possiamo dire che non funziona con il numero float.

Programma per implementare l'operatore modulo in C++.

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></'>

Operatore modulo in 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></\'>

Operatore del concatenamento del modulo

Possiamo utilizzare l'operatore Chaining of Modulus per eseguire divisioni modulari su più di due operandi in una singola istruzione. Di seguito è riportato lo pseudo-codice per il concatenamento dell'operatore modulo, come indicato di seguito.

una classe astratta può avere un costruttore
 res = operand1 % operand2 % operand3 % .... % operand_n 

Consideriamo il programma di concatenamento dell'operatore del modulo per accettare più di due operandi.

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; } 

Produzione:

 Modulus is: 2