Buscar

Aula3Expr.ArtimeticasLogicasCondicionais

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 20 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 20 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 20 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Expressões Aritméticas, Lógicas e 
Comandos Condicionais 
Cap. 3 do Livro Base 
Professor: Humberto Nigri 
hnigri@gmail.com 
Algoritmos 
1o Sem 2012 HNigri - ATP 2 
Expressões 
!   As expressões são compostas por: 
!   Operandos: variáveis ou constantes, por exemplo: a, x, 2. 
!   Operadores: por exemplo: +, -, %. 
!   Pontuação: ( ) , 
!   Expressões resultam em um valor, por exemplo: 
!   (5 + 4) resulta: 9. 
!   ((5+4) == 9) resulta: true. 
!   (9 / 5) resulta: 1. 
!   (9 % 5) resulta: 4. 
!   Prioridade dos operadores 
!   Alguns operadores têm prioridade: são calculados primeiro 
!   5 + 4 * 3 retorna 17 ou 27 ? Por que ? 
!   Prioridade da pontuação 
!   A pontuação pode alterar a prioridade normal dos operadores 
!   E ( 5 + 4 ) * 3 retorna ... 
1o Sem 2012 HNigri - ATP 3 
OPERADORES BINÁRIOS 
Seja x = 32 e y = 3. 
!  + adição de dois números: x + y 
!   (x + y é 35). 
!   - subtração de dois números: x - y 
!   (x - y é 29). 
!  * multiplicação de dois números: x * y 
!   (x * y é 96). 
!  / quociente de dois números: x / y 
!   (Se inteiro: x / y é 10 ou Se real: x / y é 
10.67). 
1o Sem 2012 HNigri - ATP 4 
OPERADORES BINÁRIOS 
Seja x = 32 e y = 3. 
!  % resto da divisão: x % y 
!   Realiza a operação de resto. 
!   x % y é 2. 
!   223 % 3 é 1. 
!   23213 % 2 é 1. 
!   12345 % 5 é 0. 
!   1212 % 11 é 2. 
!   87654 % 13 é 8. 
1o Sem 2012 HNigri - ATP 5 
OPERADORES UNÁRIOS 
Seja x = 32 e y = 0. 
!   + mais unário ou positivo: +x 
!   (+x é 32 e +y é 0). 
!   - menos unário ou negação: -x 
!   Muda o sinal do conteúdo da variável. 
!   (-x é -32 e -y é 0). 
!   ! NOT ou negação lógica: !x 
!   Inverte o conteúdo lógico da variável. 
!   ( ! x é 0 e ! y é 1). 
!   & endereço: &x 
!   Retorna o endereço de memória da variável. 
!   (&x é E16h e &y é E00h). 
!   * conteúdo (ponteiros): *x. 
1o Sem 2012 HNigri - ATP 6 
OPERADORES UNÁRIOS 
Seja x = 32 e y = 0. 
!  ++ pré ou pós incremento: ++x ou x++ 
!   Incrementa o conteúdo da variável em uma 
unidade. 
!   (x++ é 33 e ++y é 1). 
!  -- pré ou pós decremento: --x ou x-- 
!   Decrementa o conteúdo da variável em uma 
unidade. 
!   (--x é 31 e y-- é -1). 
1o Sem 2012 HNigri - ATP 7 
ATRIBUIÇÃO 
= atribui: x = y. 
+= soma e atribui (x = x + y): x += y. 
-= subtrai e atribui (x = x - y): x -= y. 
*= multiplica e atribui (x = x * y): x *= y. 
/= divide e atribui quociente (x = x / y): x /= y. 
%= divide e atribui resto (x = x % y): x %= y. 
1o Sem 2012 HNigri - ATP 8 
Comandos Condicionais 
!  Em nossa vida, frequentemente, temos que 
tomar decisões. 
!   Se fizer sol, então, ... 
!   Se idade maior que 18, então, [pode entrar] 
!   Se eu ganhar na mega sena, então, ... senão, ... 
!   Se o meu time ganhar, então, ... senão, ... 
!   Se eu passar em Algoritmos, então, senão, 
!  A programação é totalmente relacionada à 
tomada de decisões. 
1o Sem 2012 HNigri - ATP 9 
Comandos Condicionais 
!   Exemplo: Algoritmo que lê um número e o decide 
se ele é par ou impar. 
inicio 
declare numero numerico; 
escreva "Digite um numero : "; 
leia numero; 
se (numero % 2 > 0) então 
 escreva “Número impar” 
senão 
 escreva “Número par”; 
fim. 
1o Sem 2012 HNigri - ATP 10 
Comandos Condicionais - Sintaxe 
!   PORTUGOL: 
se expressão 
então comando; 
ou 
se expressão 
então comando 
senão comando; 
!   C / C ++: 
if (expressão) 
 comando; 
ou 
if (expressão) 
 comando; 
else comando; 
1o Sem 2012 HNigri - ATP 11 
Para colocar dois ou mais comandos ? 
!   PORTUGOL: 
se expressão então 
inicio 
 lista de comandos; 
fim; 
ou 
se expressão então 
inicio 
 lista de comandos; 
fim 
senão 
inicio 
 lista de comandos; 
fim; 
!   C / C ++: 
if (expressão) { 
 lista de comandos; 
} 
ou 
if (expressão) { 
 lista de comandos; 
} else { 
 lista de comandos; 
} 
1o Sem 2012 HNigri - ATP 12 
Comandos Condicionais - Fluxograma 
!  Condicional simples 
EXP ? 
Comando 1 
Comando 2 ... 
N
S 
1o Sem 2012 HNigri - ATP 13 
Comandos Condicionais - Fluxograma 
!  Condicional Completo 
EXP ? 
Comando 1 
Comando 2 ... 
NS 
Comando 3 
Comando 4 ... 
1o Sem 2012 HNigri - ATP 14 
Expressões Lógicas 
!   As expressões só tem dois resultados: 
!  verdadeiro / falso 
!  true / false 
!  Em C: 1 (diferente de zero) - verdadeiro / 0
(zero) - falso 
!   Também possuem seus operadores e operandos 
!   Assim como temos operadores aritméticos (+, -, 
*, /), temos também operadores para as 
expressões lógicas. 
!   Operadores podem ser RELACIONAIS ou 
LOGICOS 
1o Sem 2012 HNigri - ATP 15 
Operadores Relacionais 
!   Função de comparar valores: 
!   10 > 20 ? 
!   A < B ? 
!   Operadores: 
!   > (maior) A > B == V se A for maior que B 
!   < (menor) A < B == V se A for menor que B 
!   >= (maior ou igual) 
!   <= (maior ou igual) 
!   == (igual) 
!   != (diferente) 
!   ATENÇÃO: 
!   Em C, = é ATRIBUIÇÃO e == é COMPARAÇÃO !!! 
1o Sem 2012 HNigri - ATP 16 
Operadores Lógicos 
!   Função de unir o resultado de duas expressões relacionais: 
!   Operadores: 
!   E (AND) A E B == V se A for V E B for V 
Os dois precisam ser V ao mesmo tempo 
!   OU (OR) A OU B == V se A for V OU B for V 
Se ao menos um deles for V 
!   NAO (NOT) NAO A == V se A é F e == F se A é V 
Inverte o sentido do seu operando 
!   Operadores Lógicos em C / C++: 
!   E (AND) A && B 
!   OU (OR) A || B 
!   NAO (NOT) ! A 
1o Sem 2012 HNigri - ATP 17 
Expressões Lógicas 
!  Os operadores lógicos possuem um significado bem 
definido ! 
!  Exemplos: 
!  “No natal eu quero brinquedo E dinheiro” – se 
ganhar só dinheiro eu choro  
!  “No natal eu quero brinquedo OU dinheiro” – se 
ganhar só dinheiro tá bão  
!  “No natal eu NÃO quero nada” – se ganhar 
qualquer coisa fico bravo  
1o Sem 2012 HNigri - ATP 18 
Expressões Lógicas – Tabela Verdade 
!   A Tabela Verdade (além de não mentir) define todos 
os resultados possíveis para os operadores lógicos 
A B A && B A || B ! A 
F F F F V 
F V F V V 
V F F V F 
V V V V F 
1o Sem 2012 HNigri - ATP 19 
Expressões Lógicas – Exemplos 
if ( nota_final >= 70 && frequencia >= 75 ) 
 cout << “Passou”; 
else cout << “Ainda não”; 
if ( sexo == ‘F’ || pagamento_ok ) 
 cout << “pode entrar”; 
A = 10; B = 5; C = 20; 
 A > B || A < C && C < B == ? 
(A > B || A < C) && C < B == ? 
(A > B && A < C) || C < B == ? 
1o Sem 2012 HNigri - ATP 20 
Exercícios 
1.  Ler dois números do teclado e informar o menor. 
2.  Ler um número inteiro e dizer se ele é par ou impar 
3.  Ler um número e informar se ele é divisível por 3 e por 
11 ao mesmo tempo. 
4.  Ler três números quaisquer e informar o maior. 
5.  Ler três números e dizer se eles são 
“Pitagóricos” (suponha que o maior deles será o primeiro 
a ser digitado) 
6.  Ler três números e dizer se eles podem ser os lados de 
um triângulo qualquer 
7.  Ler um número e uma média e dizer se o número está 
abaixo da média, acima da média ou é igual à media.

Outros materiais