Abans d'entendre el mòdul operador , hem de conèixer el terme operador . En programació, el símbol de l'operador diu al compilador que realitzi una operació determinada en un nombre donat en funció de l'operació passada.
S'utilitza per realitzar diferents operacions (+, -, *, /) sobre números. Ajuda a millorar la capacitat lògica i matemàtica del programador mitjançant l'ús de diversos operadors al programa. Excepte aquests quatre operadors bàsics, hi ha altres operadors com ara operador de mòdul (%), operador de resolució d'abast (::), etc.
b+ arbres
En aquest apartat, ens centrarem en el operador de mòdul.
Quin és l'operador mòdul en C i C++?
El operador de mòdul és un símbol utilitzat en diversos llenguatges de programació. Es denota amb el símbol de percentatge ( % ). És un operador mòdul que s'utilitza en l'operador aritmètic. Determina la resta. En alguns casos, la resta pot ser 0, vol dir que el nombre és completament divisible pel divisor.
Sintaxi:
rem = a % b
A la sintaxi anterior, a i b són dos nombres enters, i el % El símbol (percentatge) és un operador mòdul que divideix a per b i retorna la resta.
Possibilitats de retorn de l'operador del mòdul
A continuació es mostren les possibilitats quan el primer nombre es divideix pel segon nombre per retornar només un valor residual.
- Si la variable a és completament divisible pel segon nombre (b), retorna zero (0) o la resta es converteix en 0.
- Si la variable a no és completament divisible pel segon nombre (b), retorna un valor numèric en l'interval [1, a - 1]. O podem dir que retorna la resta a un valor enter diferent de zero.
- Si el primer número (a) és diferent de zero i el segon número és 0, donarà un error en temps de compilació.
Com funciona Modulus Operator en C/C++?
L'operador mòdul treballa amb dos operands rebuts per l'usuari final. Després d'això, divideix el primer nombre pel segon nombre i determina la resta. Entenem l'exemple següent que il·lustra la funcionalitat de l'operador mòdul.
Exemple : Quan fem l'operador mòdul entre 8 i 5, vol dir 8 % 5, retorna el 3 restant perquè quan es divideix 8 per 5, retorna 1 com a quocient i 3 com a residu.
java compara cadenes
De la mateixa manera, 7 % 2 retorna 1 com a residu perquè quan 7 es divideix per 2, retorna 3 com a quocient i 1 com a residu.
Exemple 1: escriviu un programa per implementar l'operador mòdul en C.
Mode.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(); }
Sortida:
Modulus returns a remainder: 1 Modulus returns a remainder: 2 Modulus returns a remainder: 0
Nota: quan dividim un nombre flotant per un altre nombre, retorna l'error del temporitzador compilat com a operand no vàlid. Per tant, podem dir que no funciona amb nombre flotant.
Programa per implementar l'operador mòdul en 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 <<' 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 <<' 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'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 << 'Modulus is : '<< modulo; } </pre> <p> <strong>Output:</strong> </p> <pre> Modulus is: 2 </pre> <hr></'></pre></'>
Operador de mòduls en 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 <<\' 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'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 << 'Modulus is : '<< modulo; } </pre> <p> <strong>Output:</strong> </p> <pre> Modulus is: 2 </pre> <hr></\'>
Encadenament de mòduls d'operador
Podem utilitzar l'operador d'encadenament de mòduls per realitzar una divisió modular en més de dos operands en una sola instrucció. A continuació es mostra el pseudocodi per a l'encadenament de l'operador mòdul, tal com es mostra a continuació.
supw
res = operand1 % operand2 % operand3 % .... % operand_n
Considerem que el programa de Chaining of Modulus Operator pren més de dos operands.
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 << 'Modulus is : '<< modulo; }
Sortida:
Modulus is: 2
\'>'>