Sunteți pe pagina 1din 39

1

AULA 09-12
Desvios Condicionais
Curso: Tcnico em Informtica (Subsequente)
Disciplina: Algoritmos
Prof. Abraho Lopes
abrahao.lopes@ifrn.edu.br
Cronograma de Aulas
2

 13/10 - Aula Presencial - Entrada e Saida,


Operadores Matemticos (4h)
 14/10 - Exerccios (4h)
 20/10 - Aula Presencial - Tomada de
Deciso e Operadores Lgicos (4h)
 21/10 - Exerccios (4h)
 27/10 - Aula Presencial - Estruturas de
Repetio Enquanto, Para, Faa (4h)
 28/10 - Exerccios (4h)
 10/11 - Aula Presencial - Avaliao (4h)
Contedo
3

 Desvio simples (SE)


 Desvio composto (SE / SENO)
 Desvios encadeados
 Operadores lgicos (E / OU)
 Desvio com condio mltipla (CASO)
Desvio simples (SE)
4

 Algumas vezes precisamos fazer com que o


computador execute uma instruo apenas se
determinada condio acontecer.

 Chamamos esse tipo de situao de Desvio


Condicional.

 Exemplo: A lmpada deve ser trocada apenas SE ela


estiver queimada.
Desvio Simples (SE)
5

 Representamos essa situao graficamente como


mostrado abaixo:
INICIO

NO SIM
QUEIMADA? TROCAR

FIM
Desvio Simples (SE)
6

 A pergunta feita atravs do comando SE.

 O comando verifica o contedo de uma varivel e


caso o teste lgico retorne VERDADEIRO (ou SIM),
o comando executado.

 Caso o teste lgico retorne FALSO (ou NO), o


comando no executado e o programa continua
aps a instruo FIMSE.
Desvio Simples (SE)
7

 Observe o exemplo abaixo:

Quer saber se o valor de X 10

Neste caso a resposta SIM


O comando executado!
Desvio Simples (SE)
8

 Se mudarmos o valor de x para 5, veja que o


comando no ser executado.

Neste caso a resposta NO

O programa salta para linha 12


Desvio Simples (SE)
9

 Os operadores que podem ser usados para as


perguntas so:

OPERADOR DESCRIO
= IGUAL
> MAIOR QUE
< MENOR QUE
>= MAIOR OU IGUAL A
<= MENOR OU IGUAL A
<> DIFERENTE
Exerccios
10

1. Faa um programa que o usurio digite um valor e


caso o valor seja positivo, mostre a mensagem
MUITO BEM.

2. Faa um programa que o usurio digite dois valores


e se o segundo valor for maior que o primeiro,
mostre a mensagem ACERTOU.
Resposta 1
11
Resposta 2
12
Desvio Composto (SE / SENO)
13

 Nos programas que fizemos, o ideal seria que caso a


condio no fosse atendida, uma mensagem de erro
fosse mostrada.

 Podemos fazer isso atravs de um desvio composto,


que executa um comando quando a resposta SIM e
outro comando diferente quando a resposta NO.

 Observe o diagrama a seguir:


Desvio Composto (SE / SENO)
14

INICIO

ACIONAR
INTERRUPTOR

NO SIM
TROCAR ACENDEU? APAGAR

FIM
Desvio Composto (SE / SENO)
15

 Em algoritmo fica assim:

A linha 10 executada apenas


quando a resposta SIM

A linha 12 executada apenas


quando a resposta NO
Exerccios
16

3. Faa um programa que o usurio digite um valor e


caso o valor seja maior ou igual a zero, mostre a
mensagem POSITIVO, caso contrrio mostre a
mensagem NEGATIVO.

4. Faa um programa que o usurio digite dois valores


e se o segundo valor for maior que o primeiro,
mostre a mensagem O SEGUNDO MAIOR,
caso contrrio, mostre NO ULTRAPASSA O
PRIMEIRO.
Resposta 3
17
Resposta 4
18
Desvios Encadeados
19

 H ocasies em que dentro de um SE ou SENO


precisamos realizar um novo teste.

 Veja o exemplo abaixo:

 Um programa l dois nmeros e diz qual o maior ou


se so iguais.
INICIO
Desvios Encadeados
20

L X e Y

NO SIM
X=Y?

NO
X>Y? SIM ESCREVA SO
IGUAIS
ESCREVA Y ESCREVA X
MAIOR MAIOR

FIM
Desvios Encadeados
21

 Em algoritmo:
Exerccio
22

5. O Mossor West Shopping agora usa uma nova


tarifao para o estacionamento, mostrado na tabela
abaixo:
TEMPO VALOR
AT 15 MINUTOS GRTIS
AT 60 MINUTOS R$ 1,00
ACIMA DE 60 MINUTOS R$ 2,00

O programa recebe o tempo em minutos e diz quando


o usurio precisa pagar.
Resposta 5
23
Exerccio
24

6. O usurio digita trs lados de um triangulo e o


programa diz se os valores formam ou no um
tringulo.

Pela regra, para se formar um tringulo, cada lado tem


que ser menor que a soma dos outros dois lados. Ou
seja (C < A+B), (B< A+C) e (A< B+C).
Resposta 6
25
Operadores Lgicos
26

 Alguns problemas se tornam muito complexos


quando usamos desvios encadeados. Podemos
simplific-los agrupando condies atravs dos
operadores lgicos E e OU .

 Observe o Exerccio 6 reescrito usando o operador E.


Operadores Lgicos
27

Um nico SE usado
Operadores Lgicos
28

 Regras dos operadores

 Operador E - O teste considerado


VERDADEIRO se todas as comparaes forem
verdadeiras (ao responder SIM em todas as
perguntas)

 Operador OU - O teste considerado


VERDADEIRO se qualquer das comparaes forem
verdadeiras (ao responder SIM em pelo menos uma
das perguntas)
Exerccio 7
29

Diga se verdadeiro ou falso


a <- 3 b <- 4 c <- 5

1) (A > B) E (B > C)
2) (A < C) E (A > B)
3) (A < B) E (B < C)
4) (A > B) OU (B > C)
5) (A < C) OU (A > B)
6) (A < B) OU (B < C)
F, F, V, F, V, V
Exerccio 8
30

 Faa um programa que pergunte ao usurio seu


login e sua senha. O sistema s libera o acesso se as
duas informaes estiverem corretas.
Resposta 8
31
Exerccio 9
32

 Faa um programa que simule uma votao em que o


usurio pode votar no candidato A, cujo numero
73, ou no candidato B, cujo nmero 98. Ao ser
digitado um desses nmeros, o programa diz VOTO
CONFIRMADO. Se digitar qualquer outro nmero,
diz VOTO NULO.
Resposta 9
33
Exerccios
34

10. Faa um programa que pea ao usurio para digitar


um nmero entre 20 e 30. Se o valor estiver fora
dessa faixa, mostra uma mensagem de erro.

11. Faa um programa que pea ao usurio para digitar


nmeros abaixo de 10 ou acima de 50. Se o valor
digitado no satisfaz essa condio, mostre uma
mensagem de erro.
Desvio com condio mltipla
35

 H ocasies em que podemos agrupar diversos SE


numa estrutura mais prtica chamada ESCOLHA.

 Esse comando permite executar diferentes comandos


para diferentes valores de uma mesma varivel.

 Observe o exemplo:
 O programa l 2 valores e exibe um menu com 3
opes: somar, subtrair ou multiplicar.
Desvio com condio mltipla
36
Desvio com condio mltipla
37

 A estrutura caso tambm aceita mltiplos valores em


uma mesma condio.
Exerccio 12
38

 O programa pergunta o nome do usurio e diz sua


profisso de acordo com a tabela abaixo:

Usurio Profisso
Pedro Gerente
Maria Vendedora
Alice Supervisora
Carlos Diretor

 Se o usurio no estiver na lista, mostra a frase


USURIO DESCONHECIDO.
Resposta 12
39

S-ar putea să vă placă și