Programação Estruturada I
OperadoresProf. Thiago Caproni Tavares 1 Prof. Mateus dos Santos2
1thiago.tavares@ifsuldeminas.edu.br
2mateus.santos@ifsuldeminas.edu.br
Conteúdo
1 Operador de Atribuição 2 Operadores Aritméticos 3 Operadores Lógicos 4 Operadores Relacionais 5 Precedências 6 ExercíciosConteúdo
1 Operador de Atribuição 2 Operadores Aritméticos 3 Operadores Lógicos 4 Operadores Relacionais 5 Precedências 6 ExercíciosOperador de Atribuição
Atribuição simples: nome_da_variavel = expressao; int x ; c h a r ch ; f l o a t f ; v o i d f u n c (v o i d){ ch = x ; x = f ; f = ch ; f = x ; }Operador de Atribuição
Atribuições múltiplas:
Permite a atribuição de um mesmo valor as várias variáveis:
Operadores Aritméticos
Operador Ação
- Subtração, também menos unário
+ Adição
* Multiplicação
/ Divisão
% Módulo da divisão (resto)
– Decremento
++ Incremento
pow(b,p) Potenciação
Conteúdo
1 Operador de Atribuição 2 Operadores Aritméticos 3 Operadores Lógicos 4 Operadores Relacionais 5 Precedências 6 ExercíciosOperadores Aritméticos
int x , y ; x = 5; y = 2; p r i n t f ( " % d " , x / y ); // m o s t r a r a 2 p r i n t f ( " % d " , x % y ); /* m o s t r a r a 1 , r e s t o da d i v i s a o i n t e i r a */ x = 1; y = 2; p r i n t f ( " % d % d " , x / y , x % y ) // m o s t r a r a 0 1 AtençãoA última linha imprime 0 e 1 porque 1/2 em um divisão inteira é 0 com resto 1!
Operadores Aritméticos
int x , y ; x = 5; y = 2; p r i n t f ( " % d " , x / y ); // m o s t r a r a 2 p r i n t f ( " % d " , x % y ); /* m o s t r a r a 1 , r e s t o da d i v i s a o i n t e i r a */ x = 1; y = 2; p r i n t f ( " % d % d " , x / y , x % y ) // m o s t r a r a 0 1 AtençãoA última linha imprime 0 e 1 porque 1/2 em um divisão inteira é 0 com resto 1!
Incremento e Decremento
x = x + 1; é o mesmo que: ++ x ; e: x = x - 1; é o mesmo que: x - -;Incremento e Decremento
Ambos os operadores de incremento e decremento podem ser utilizados como prefixo ou sufixo:
x ++; ou: ++ x ;
Atenção
Incremento e Decremento
Ambos os operadores de incremento e decremento podem ser utilizados como prefixo ou sufixo:
x ++; ou: ++ x ;
Atenção
Incremento e Decremento
x = 10; y = ++ x ;
coloca 11 em y. Porém se o código fosse escrito como: x = 10;
y = x ++
Precedência de Operadores Aritméticos
Mais alta Parênteses mais internos pow(b,p) sqrt(x)
++
-- (menos unário) * / %
Mais baixa +
-Operadores de mesmo nível são avaliados pelo compilador da esquerda para a direita;
Conteúdo
1 Operador de Atribuição 2 Operadores Aritméticos 3 Operadores Lógicos 4 Operadores Relacionais 5 Precedências 6 ExercíciosOperadores Lógicos
Operador Ação && AND k OR ! NOT p q p&&q pkq !p 0 0 0 0 1 0 1 0 1 1 1 0 0 1 0 1 1 1 1 0Conteúdo
1 Operador de Atribuição 2 Operadores Aritméticos 3 Operadores Lógicos 4 Operadores Relacionais 5 Precedências 6 ExercíciosOperadores Relacionais
Operador Ação > Maior >= Maior ou igual < Menor <= Menor ou igual == Igual ! = DiferenteConteúdo
1 Operador de Atribuição 2 Operadores Aritméticos 3 Operadores Lógicos 4 Operadores Relacionais 5 Precedências 6 ExercíciosOperadores Relacionais e Lógicos
10 > 5 & !(10 > 9) k 3 <= 4 Precedências:
1 Parênteses mais internos;
2 Operadores Aritméticos;
3 Operadores Relacionais;
Conteúdo
1 Operador de Atribuição 2 Operadores Aritméticos 3 Operadores Lógicos 4 Operadores Relacionais 5 Precedências 6 ExercíciosExercícios
1 Supondo que A, B e C são variáveis do tipo inteiro, com valores
iguais a 5, 10 e -8, respectivamente, e uma variável D com valor de 1.5, quais os resultados das expressões aritméticas apresentadas em seguida? a) 2 ∗ A % 3 − C b) sqrt(−2 ∗ C ) / 4 c) ((20 / 3) / 3) + pow (2, 8) / 2 d) (30 % 4 ∗ pow (3, 3)) ∗ −1 e) pow (−C , 2) + (D ∗ 10) / A f) sqrt(pow (A, B / A)) + C ∗ D
Obrigado pela atenção!!! thiago.tavares@ifsuldeminas.edu.br
Referências I
ASCENCIO, A.; CAMPOS, E. de. Fundamentos da programação de
computadores: algoritmos, Pascal, C/C++ e Java. Pearson Prentice
Hall, 2008. ISBN 9788576051480. Disponível em:
<https://books.google.com.br/books?id=p-mTPgAACAAJ>.
C: A Reference Manual. Pearson Education, 2007. ISBN 9788131714409. Disponível em:
<https://books.google.com.br/books?id=Wt2NEypdGNIC>.
DAMAS, L. LINGUAGEM C. LTC. ISBN 9788521615194. Disponível em: <https://books.google.com.br/books?id=22-vPgAACAAJ>. FEOFILOFF, P. Algoritmos Em Linguagem C. CAMPUS - RJ, 2009. ISBN 9788535232493. Disponível em:
Referências II
KERNIGHAN, B.; RITCHIE, D. C: a linguagem de programação padrão
ANSI. Campus, 1989. ISBN 9788570015860. Disponível em: <https://books.google.com.br/books?id=aVWrQwAACAAJ>.
MIZRAHI, V. Treinamento em linguagem C. Pearson Prentice Hall, 2008. ISBN 9788576051916. Disponível em:
<https://books.google.com.br/books?id=7xt7PgAACAAJ>.
SCHILDT, H.; MAYER, R. C completo e total. Makron, 1997. ISBN 9788534605953. Disponível em: