Baixe o app para aproveitar ainda mais
Prévia do material em texto
Atribuições, Aritmética e Lógica Operadores e Expressões Objetivo Iníciar o estudo dos OPERADORES da linguagem C. Os OPERADORES, em conjunto com CONSTANTES e VARIÁVEIS, são os constituintes básicos de EXPRESSÕES. Serão detalhados os operadores utilizadoes em expressões: de atribuição aritmética e lógica 2 Operadores Em C, podemos classificar os OPERADORES em cinco grande categorias: Atribuições Aritméticos Lógicos e Relacionais Bit-a-Bit Especiais 3 Atribuições Forma Geral VARIÁVEL = EXPRESSÃO; 4 Atribuições Atribuições múltiplas: C Reduzido: (para todo operador op binário) é equivalente a: 5 VAR1 = VAR2 = .... = VARn = EXPRESSÃO; VAR = VAR op EXPRESSÃO; VAR OP= EXPRESSÃO; Operadores Aritméticos 6 Operadores Aritméticos operadores com o mesmo nível de PRECEDÊNCIA são avaliados pelo compilador da ESQUERDA PARA a DIREITA 7 Exemplo 1 1. int a = 3; 2. int b = 2; 3. int c = a + -b * 3 / 2 + a % 3 * 4; 8 Em: Exemplo 1 9 Quanto vale a VAR c? Resposta: • operadores de maior precedência são avaliados primeiro • operadores de mesma precedência são associados da esquerda para a direita • então, a expressão acima seria avaliada assim: int c = ((a + (((-b)*3)/2)) + ((a%3)*4)); Exemplo 2 1. int i , j = 2; 2. i = j++; 3. i = -- j; 4. i = --j++; 10 Quanto valem i e j abaixo, após cada atribuição??? Exemplo 2 1. i = j++; /* i == 2, j == 3; primeiro armazena o valor de j em i, depois incrementa j */ 2. i = -- j; /* i == 2, j == 2; primeiro decrementa j, depois armazena o valor de j em i */ 3. i = --j++; /* expressão inválida */ 11 Exemplo 3 1. int c = 3; 2. c = c-- + c; 12 Exemplo 3 Quanto vale a VAR c? Resposta: Atenção: O uso de operadores de incremento (++) e decremento (--) em EXPRESSÕES frequentemente é AMBÍGUO! Evite-o SEMPRE!!! Assim, dependendo da ordem em que o compilador avalia as sub-expressões entre o operador + podemos ter resultados diversos para o valor da variável c! 13 Operadores Lógicos e Relacionais 14 Operadores Lógicos e Relacionais 15 Precedência em operadores Lógicos 16 Atividade Implemente os operadores implicação e ouexclusivo através de funções 17 Funções Implica Ou Exclusivo (XOR) Referências CCT capítulo 2 K&R capítulos 2 http://pt.wikipedia.org/wiki/Operadores_e m_C_e_C%2B%2B http://www.mspc.eng.br/info/cpp_oper_10 .shtml 18
Compartilhar