Algoritmo 1
Semana 04
DESVIO CONDICIONAL
SE... ENTÃO...
SE... ENTAO... SENAO...
1
Tomadas de Decisões
 Você já aprendeu como trabalhar com entrada,
processamento e saída. Apesar de já conseguir
solucionar problemas e transformá-los em
programas, os recursos aqui estudados são
limitados, pois haverá momentos em que um
determinado valor dentro de um programa
necessitará ser tratado para se efetuar um
processamento mais adequado.
2
Desvio condicional
simples
 Imagine a seguinte situação: um programa que
apresente a média escolar de um aluno.
Baseado em sua média, se o aluno tiver nota
maior ou igual a 7 devera apresentar uma
mensagem parabenizando o aluno
 Para solucionar o problema proposto será
necessário trabalhar uma nova instrução:
SE...ENTÃO...FIM_SE.
 Esta instrução tem por finalidade tomar uma
decisão. Sendo a condição verdadeira, serão
executadas todas as instruções que estejam
entre a instrução se...então e a instrução fim_se..
3
Estrutura 4
Início
X > 5
Leia X
Escreva(X)
Fim
X  X + 1
V
F
Sintaxe
Algoritmo "<nome do algoritmo>"
var
< declaração de variáveis>
inicio
< lista de comandos>
SE <condição> ENTAO
<instruções para condição verdadeira>
FIM_SE
<instruções executadas após condição ser verdadeira>
fimalgoritmo
Estrutura 6
Início
Media >7
Leia
N1, N2
("Sua Média final foi",
Media)
Fim
Você está
Aprovado
V
F
Media <- (N1+N2)/2
Exemplo
 Elaborar um programa que pessa dois valores
para as variáveis A e B. Efetuar a soma dos dois
valores. Apresentar o resultado se a soma for
maior que 10.
7
algoritmo "Se"
var
N1,N2,Media: real
inicio
Escreva("Digite a Primeira Nota")
Leia(N1)
Escreva("Digite a Segunda Nota")
Leia(N2)
Media <- (N1+N2)/2
Se Media > 7 entao
Escreva("Você está Aprovado")
fimse
Escreva("Sua Média final foi", Media)
fimalgoritmo
Prática 1
 Faça um algoritmo para ler dois valores e dizer se
são iguais ou não. Se não forem iguais, dizer qual
deles é maior que o outro.
8
Prática 1
 Elaborar um programa que pessa dois valores
para as variáveis A e B. Efetuar a soma dos dois
valores. Apresentar o resultado se a soma for
maior que 10.
9
algoritmo "Se"
var
V1,V2: real
inicio
Escreva("Digite O primeiro Valor")
Leia(V1)
Escreva("Digite o segundo valor")
Leia(V2)
Se V1 = V2 entao
Escreva("Os valores lidos são iguais")
Fimse
Se V1 > V2 entao
Escreva("O primeiro valor lido é maior que o segundo")
fimse
Se V1 < V2 entao
Escreva("O segundo valor lido é maior que o primeiro")
fimse
Escreva(O primeiro valor lido foi: “, V1, “ e o segundo valor lido foi: “, V2)
fimalgoritmo
Desvio condicional
Composto
 Nesta estrutura, a seleção de uma ação é feita a
partir da especificação de duas alternativas e é
dirigida por uma condição. Se a condição for
verdadeira, um curso de ação é tomado; caso
contrário, um outro curso de ação é que será
tomado. Desta forma, o fluxo de execução é
condicionado por uma tomada de uma decisão
(teste de uma condição) e alguns passos
(comandos) podem não ser processados, devido
a um desvio (salto).
10
Estrutura 11
Início
X > 5
Leia X
Escreva(X)
Fim
X  X + 1
V
F
X  5
Sintaxe
Algoritmo "<nome do algoritmo>"
var
< declaração de variáveis>
inicio
< lista de comandos>
SE <condição> ENTAO
<instruções para condição verdadeira>
SENAO
<instruções para condição falsa>
FIM_SE
<instruções executadas após condição ser verdadeira>
fimalgoritmo
Prática 2
 Refaça o algoritmo que lê dois valores, diz se são
iguais ou não e qual deles é maior que o outro, se
não forem iguais (exemplo da estrutura
Condicional Simples), usando a estrutura
Condicional Composto:
13
Prática 2
 Elaborar um programa que pessa dois valores
para as variáveis A e B. Efetuar a soma dos dois
valores. Apresentar o resultado se a soma for
maior que 10.
14
algoritmo "Se"
var
V1,V2: real
inicio
Escreva("Digite O primeiro Valor")
Leia(V1)
Escreva("Digite o segundo valor")
Leia(V2)
Se V1 = V2 entao
Escreva("Os valores lidos são iguais")
Senao
Se V1 > V2 entao
Escreva("O primeiro valor lido é maior que o segundo")
Senao
Escreva("O segundo valor lido é maior que o primeiro")
Fimse
Fimse
Escreva(O primeiro valor lido foi: “, V1, “ e o segundo valor lido foi: “, V2)
Fimalgoritmo

Semana 04 Estruturas Condicionais

  • 1.
    Algoritmo 1 Semana 04 DESVIOCONDICIONAL SE... ENTÃO... SE... ENTAO... SENAO... 1
  • 2.
    Tomadas de Decisões Você já aprendeu como trabalhar com entrada, processamento e saída. Apesar de já conseguir solucionar problemas e transformá-los em programas, os recursos aqui estudados são limitados, pois haverá momentos em que um determinado valor dentro de um programa necessitará ser tratado para se efetuar um processamento mais adequado. 2
  • 3.
    Desvio condicional simples  Imaginea seguinte situação: um programa que apresente a média escolar de um aluno. Baseado em sua média, se o aluno tiver nota maior ou igual a 7 devera apresentar uma mensagem parabenizando o aluno  Para solucionar o problema proposto será necessário trabalhar uma nova instrução: SE...ENTÃO...FIM_SE.  Esta instrução tem por finalidade tomar uma decisão. Sendo a condição verdadeira, serão executadas todas as instruções que estejam entre a instrução se...então e a instrução fim_se.. 3
  • 4.
    Estrutura 4 Início X >5 Leia X Escreva(X) Fim X  X + 1 V F
  • 5.
    Sintaxe Algoritmo "<nome doalgoritmo>" var < declaração de variáveis> inicio < lista de comandos> SE <condição> ENTAO <instruções para condição verdadeira> FIM_SE <instruções executadas após condição ser verdadeira> fimalgoritmo
  • 6.
    Estrutura 6 Início Media >7 Leia N1,N2 ("Sua Média final foi", Media) Fim Você está Aprovado V F Media <- (N1+N2)/2
  • 7.
    Exemplo  Elaborar umprograma que pessa dois valores para as variáveis A e B. Efetuar a soma dos dois valores. Apresentar o resultado se a soma for maior que 10. 7 algoritmo "Se" var N1,N2,Media: real inicio Escreva("Digite a Primeira Nota") Leia(N1) Escreva("Digite a Segunda Nota") Leia(N2) Media <- (N1+N2)/2 Se Media > 7 entao Escreva("Você está Aprovado") fimse Escreva("Sua Média final foi", Media) fimalgoritmo
  • 8.
    Prática 1  Façaum algoritmo para ler dois valores e dizer se são iguais ou não. Se não forem iguais, dizer qual deles é maior que o outro. 8
  • 9.
    Prática 1  Elaborarum programa que pessa dois valores para as variáveis A e B. Efetuar a soma dos dois valores. Apresentar o resultado se a soma for maior que 10. 9 algoritmo "Se" var V1,V2: real inicio Escreva("Digite O primeiro Valor") Leia(V1) Escreva("Digite o segundo valor") Leia(V2) Se V1 = V2 entao Escreva("Os valores lidos são iguais") Fimse Se V1 > V2 entao Escreva("O primeiro valor lido é maior que o segundo") fimse Se V1 < V2 entao Escreva("O segundo valor lido é maior que o primeiro") fimse Escreva(O primeiro valor lido foi: “, V1, “ e o segundo valor lido foi: “, V2) fimalgoritmo
  • 10.
    Desvio condicional Composto  Nestaestrutura, a seleção de uma ação é feita a partir da especificação de duas alternativas e é dirigida por uma condição. Se a condição for verdadeira, um curso de ação é tomado; caso contrário, um outro curso de ação é que será tomado. Desta forma, o fluxo de execução é condicionado por uma tomada de uma decisão (teste de uma condição) e alguns passos (comandos) podem não ser processados, devido a um desvio (salto). 10
  • 11.
    Estrutura 11 Início X >5 Leia X Escreva(X) Fim X  X + 1 V F X  5
  • 12.
    Sintaxe Algoritmo "<nome doalgoritmo>" var < declaração de variáveis> inicio < lista de comandos> SE <condição> ENTAO <instruções para condição verdadeira> SENAO <instruções para condição falsa> FIM_SE <instruções executadas após condição ser verdadeira> fimalgoritmo
  • 13.
    Prática 2  Refaçao algoritmo que lê dois valores, diz se são iguais ou não e qual deles é maior que o outro, se não forem iguais (exemplo da estrutura Condicional Simples), usando a estrutura Condicional Composto: 13
  • 14.
    Prática 2  Elaborarum programa que pessa dois valores para as variáveis A e B. Efetuar a soma dos dois valores. Apresentar o resultado se a soma for maior que 10. 14 algoritmo "Se" var V1,V2: real inicio Escreva("Digite O primeiro Valor") Leia(V1) Escreva("Digite o segundo valor") Leia(V2) Se V1 = V2 entao Escreva("Os valores lidos são iguais") Senao Se V1 > V2 entao Escreva("O primeiro valor lido é maior que o segundo") Senao Escreva("O segundo valor lido é maior que o primeiro") Fimse Fimse Escreva(O primeiro valor lido foi: “, V1, “ e o segundo valor lido foi: “, V2) Fimalgoritmo