Na vida real, tomamos decisões o tempo todo: 'SE chover, ENTÃO levo o guarda-chuva'. Na programação, fazemos exatamente a mesma coisa usando a estrutura SE. O comando avalia uma condição. Se for verdadeira, o bloco de código é executado; se for falsa, o programa ignora aquele bloco.
algoritmo "VerificaChuva"
var
chovendo: logico
inicio
chovendo <- verdadeiro
se (chovendo = verdadeiro) entao
escreval("Vou levar o guarda-chuva!")
fimse
escreval("Saindo de casa...")
fimalgoritmoE se a condição for falsa? Para dar uma resposta alternativa, adicionamos a palavra senao (que significa 'caso contrário'). Podemos até colocar um 'se' dentro de outro para criar múltiplas rotas de decisão!
algoritmo "MaioridadeAninhado"
var
idade: inteiro
inicio
escreva("Digite sua idade: ")
leia(idade)
se (idade >= 18) entao
escreval("Você é adulto.")
senao
se (idade >= 12) entao
escreval("Você é adolescente.")
senao
escreval("Você é criança.")
fimse
fimse
fimalgoritmoSE (numero MOD 2 = 0). Se for, exiba "É par", senão, exiba "É ímpar".Exercício: decidir pela média
O enunciado diz que uma média de pelo menos 7 aprova o aluno. Transforme “pelo menos” em >=: usar apenas > reprovaria incorretamente quem obteve exatamente 7. O bloco senao trata os valores que não atendem à primeira condição.
algoritmo "ResultadoDaMedia"
var
media: real
inicio
media <- 7
se media >= 7 entao
escreval("Aprovado")
senao
escreval("Recuperação")
fimse
fimalgoritmo
| Média | media >= 7 | Saída esperada |
|---|---|---|
| 6.9 | falso | Recuperação |
| 7 | verdadeiro | Aprovado |
| 7.1 | verdadeiro | Aprovado |
Como conferir a condição
Antes de adicionar novos blocos, teste um valor menor, um igual e um maior que o limite. Em condições aninhadas, cada se precisa do seu fimse. Atribuir um valor com <- e compará-lo com = também são operações diferentes.
Revise os operadores relacionais, compare com ESCOLHA CASO e pratique nos exercícios resolvidos.