Exemplos de precedência C++

Exemplos De Precedencia C



Em C++, quando trabalhamos com os operadores, existe uma sequência na qual todas as operações são realizadas. A precedência do operador é utilizada ao trabalhar com vários operadores na expressão do nosso código. Por exemplo, ao trabalhar com operadores de adição, subtração, multiplicação e divisão, as operações de multiplicação e divisão são executadas primeiro da esquerda para a direita, pois têm alta precedência, e as operações de adição e subtração são executadas a seguir, da esquerda para a direita, pois têm baixa precedência do que a multiplicação e divisão. Mas se a expressão contém apenas os operadores de adição e subtração, a operação é simplesmente executada da esquerda para a direita. Aqui mostraremos a tabela de precedência de operadores e os exemplos de precedência de operadores.

Precedência de operadores de operações aritméticas







Operação Operadores Precedência
parênteses () Esses parênteses são operados.
multiplicação, divisão, módulo *, /,% Essas operações são realizadas e sua ordem é da esquerda para a direita.
adição subtração +, – Essas operações são realizadas no final e sua sequência é da esquerda para a direita.

Exemplo 1:

Vamos começar nosso código incluindo o arquivo de cabeçalho denominado “iostrem”. Muitas funções são declaradas neste arquivo de cabeçalho “iostream” que usaremos em nosso código. Abaixo dele, digitamos “namespace std” e invocamos “main()” adiante. Aqui em “main()”, declaramos as variáveis ​​denominadas “i”, “j” e “k” com “int” e os valores que passamos aqui são “10”, “37” e “29”, respectivamente. Também declaramos a variável “r” onde o resultado é salvo.



Depois disso, digitamos uma expressão usando os operadores “+, “/” e “-”. Como explicamos anteriormente, essas operações são realizadas em sequência. A expressão que colocamos aqui é “i + j / k – j” em que primeiro é realizada a divisão e depois são realizadas as operações de adição e subtração. Ele exibe o resultado em valores inteiros conforme declaramos a variável “r” como o inteiro. A seguir, exibimos o resultado calculado usando “cout”.



Código 1:

#include

usando espaço para nome padrão ;

interno principal ( )

{

interno eu = 10 , j = 37 , k = 29 , r ;

R = eu + j / k - j ;

corte << 'O resultado da expressão dada é =' << R ;

retornar 0 ;

}

Saída:

A saída é “-26” após realizar todas as operações. Este resultado é calculado de acordo com a precedência do operador fornecida pela linguagem C++.





Exemplo 2:

Neste código, após incluir o arquivo de cabeçalho e invocar “main()”, inicializamos uma variável “int” com o nome “val1” e colocamos a expressão na qual digitamos “9 + 18 * 7”. Aqui, ele realiza primeiro a multiplicação e depois adiciona “9” ao valor multiplicado. A seguir, inicializamos “int val2” com “9 + (18 * 7)”.



Aqui, os parênteses são resolvidos primeiro. Então, a adição é realizada. Depois disso, inicializamos também “int val3” com a expressão “(9 + 18) * 7”. Nesta expressão, os parênteses novamente são operados primeiro e depois a multiplicação é realizada. Os valores da expressão são iguais, mas fornecem resultados exclusivos devido à precedência do operador. Agora seguimos em frente e imprimimos todos os resultados que estão armazenados nas variáveis ​​“val1”, “val2” e “val3” com o auxílio de “cout”.

Código 2:

#include

usando espaço para nome padrão ;

interno principal ( ) {

interno escolha1 = 9 + 18 * 7 ;
interno val2 = 9 + ( 18 * 7 ) ;
interno val3 = ( 9 + 18 ) * 7 ;


corte << 'O primeiro resultado mostra =' << escolha1 << fim ;

corte << 'O segundo resultado mostra =' << val2 << fim ;

corte << 'Terceiro resultado mostra =' << val3 << fim ;

retornar 0 ;

}

Saída:

O resultado que obtemos após calcular a expressão dada é o seguinte. Podemos ver que o terceiro resultado não é igual aos outros dois, embora os valores sejam iguais. Isto se deve à precedência do operador que é aplicada ao operador da expressão.

Exemplo 3:

Aqui, inicializamos diferentes variáveis ​​com valores diferentes, e o tipo de dados de todas essas variáveis ​​é “int”. Temos as variáveis ​​inteiras “a”, “b”, “c” e “d” com os valores “14”, “9”, “15” e “29”, respectivamente. Depois disso, inicializamos “int R1” e a expressão que colocamos aqui é “a + b) * c/d”. Os parênteses são resolvidos primeiro. Em seguida, são realizadas as operações de multiplicação e divisão. Também exibimos o resultado abaixo disso. Então, temos “int R2” com a expressão “a – b * (d + a) + c”. Aqui também resolve os parênteses e depois a subtração e a adição são realizadas de acordo com a precedência do operador. Também imprimimos seu resultado e inicializamos “int R3” onde a expressão “b – d + c * a” é digitada. Nesta expressão, a multiplicação é realizada primeiro, depois a subtração e a adição são realizadas. O resultado desta expressão também é exibido a seguir. Agora, temos a última expressão, “d + (a * b) / a”, cujo resultado está armazenado na variável “R4”. Nesta expressão, os parênteses são resolvidos primeiro e depois divididos. Ao final é realizada a adição. O resultado desta expressão é mostrado a seguir:

Código 3:

#include

usando espaço para nome padrão ;

interno principal ( ) {

interno a = 14 ;
interno b = 9 ;
interno c = quinze ;
interno d = 29 ;
interno R1 = ( a + b ) * c / d ;


corte << '(a + b) *c/d' << 'dá =' << R1 << fim ;

interno R2 = a - b * ( d + a ) + c ;

corte << 'a - b (d + a) + c ' << 'dá =' << R2 << fim ;

interno R3 = b - d + c * a ;

corte << 'b - d + c * a' << 'dá =' << R3 << fim ;

interno R4 = d + ( a * b ) / a ;

corte << 'd + (a * b) / a ' << 'dá =' << R4 << fim ;

retornar 0 ;

}

Saída:

A seguir está o resultado do cálculo das expressões mencionadas anteriormente. Obtemos este resultado porque os operadores na expressão têm a precedência de operador aplicada a eles:

Exemplo 4:

Inicializamos as variáveis ​​“a1”, “b1”, “c1”, “d1”, “e1” e “f1” aqui com os valores inteiros de “64”, “90”, “11”, “27”, “34” e “98”, respectivamente. Inicializamos o “int result1” aqui com a expressão “a1 + b1 – c1) * d1 / f1” e o resultado é armazenado na variável “result1”. Aqui, os parênteses são resolvidos primeiro. Então, as operações restantes são computadas sequencialmente. Em seguida, imprimimos o “resultado1”. Da mesma forma, calculamos as expressões e as armazenamos em diferentes variáveis. Em seguida, imprimimos todos os resultados separadamente, mostrando como funciona a precedência do operador.

Código 4:

#include

usando espaço para nome padrão ;

interno principal ( ) {

interno a1 = 64 ;
interno b1 = 90 ;
interno c1 = onze ;
interno d1 = 27 ;
interno e1 = 3. 4 ;
interno f1 = 98 ;
interno resultado1 = ( a1 + b1 - c1 ) * d1 / f1 ;


corte << 'O resultado 1 é' << resultado1 << fim ;

interno resultado2 = a1 + ( f1 * b1 ) / e1 ;

corte << 'O resultado 2 é' << resultado2 << fim ;

interno resultado3 = e1 + d1 + a1 - c1 * b1 / a1 ;

corte << 'O resultado 3 é' << resultado3 << fim ;

interno resultado4 = a1 - f1 + ( b1 - d1 ) * c1 ;

corte << 'O resultado 4 é' << resultado4 << fim ;

interno resultado5 = ( f1 + ( a1 * ( b1 + a1 ) - f1 ) * a1 + e1 ) ;

corte << 'O resultado 5 é' << resultado5 << fim ;

retornar 0 ;

}

Saída:

A saída do código fornecido é renderizada aqui, mostrando o resultado de todas as expressões que inserimos anteriormente. Todas as expressões são calculadas seguindo a regra de precedência de ordem.

Conclusão

Vimos a “precedência C++” aqui, na qual estudamos profundamente a ordem dos operadores em que eles são calculados na programação C++. Também mostramos a ordem dos operadores em forma de tabela e depois realizamos vários exemplos nos quais aprendemos como as expressões eram resolvidas de acordo com a precedência de ordem na programação C++.