logo

Operador Módulo em C/C++

Antes de entender sobre módulo operador , precisamos saber sobre o termo operador . Na programação, o símbolo do operador informa ao compilador para executar uma operação específica em um determinado número com base na operação passada.

É usado para realizar diferentes operações (+, -, *, /) em números. Ajuda a aprimorar a habilidade lógica e matemática do programador usando vários operadores no programa. Exceto estes quatro operadores básicos, existem alguns outros operadores, como operador de módulo (%), operador de resolução de escopo (::), etc.

travessia pós-ordem da árvore binária

Nesta seção, nos concentraremos no operador de módulo.

Operador Módulo em C/C++

Qual é o operador de módulo em C e C++?

O operador módulo é um símbolo usado em várias linguagens de programação. É denotado pelo símbolo de porcentagem ( % ). É um operador de módulo usado no operador aritmético. Ele determina o restante. Em alguns casos, o resto pode ser 0, significa que o número é completamente divisível pelo divisor.

Sintaxe:

 rem = a % b 

Na sintaxe acima, a e b são dois inteiros, e o % O símbolo (porcentagem) é um operador de módulo que divide a por be retorna o resto.

Possibilidades de retorno do operador Módulo

A seguir estão as possibilidades quando o primeiro número é dividido pelo segundo número para retornar apenas um valor restante.

  1. Se a variável a for completamente divisível pelo segundo número (b), ela retornará zero (0) ou o resto se tornará 0.
  2. Se a variável a não for completamente divisível pelo segundo número (b), ela retornará um valor numérico no intervalo [1, a - 1]. Ou podemos dizer que retorna o resto para um valor inteiro diferente de zero.
  3. Se o primeiro número (a) for diferente de zero e o segundo número for 0, ocorrerá um erro em tempo de compilação.

Como o Operador Módulo funciona em C/C++?

O operador módulo funciona com dois operandos recebidos pelo usuário final. Depois disso, divide o primeiro número pelo segundo número e determina o resto. Vamos entender o exemplo a seguir que ilustra a funcionalidade do operador módulo.

instrução de mudança java

Exemplo : Quando realizamos o operador módulo entre 8 e 5, significa 8% 5, ele retorna o resto 3 porque quando 8 é dividido por 5, retorna 1 como quociente e 3 como resto.

Da mesma forma, 7% 2 retorna 1 como resto porque quando 7 é dividido por 2, retorna 3 como quociente e 1 como resto.

Exemplo 1: Escreva um programa para implementar o Operador Módulo em C.

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

Saída:

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

Nota: Quando dividimos um número flutuante por outro número, ele retorna o erro do timer compilado como um operando inválido. Portanto, podemos dizer que não funciona com número flutuante.

Programa para implementar o operador módulo em C++.

árvores avl

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

Operador Módulo em C++

Modo4.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></\'>

Encadeamento do Operador de Módulo

Podemos usar o Operador Encadeamento de Módulo para realizar divisão modular em mais de dois operandos em uma única instrução. A seguir está o pseudocódigo para o encadeamento do operador módulo, conforme fornecido a seguir.

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

Vamos considerar que o programa de Encadeamento do Operador de Módulo aceita mais de dois operandos.

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

Saída:

 Modulus is: 2