Cursos / Informática para Internet / Lógica de Programação / Aula

arrow_back Aula 07 - Estruturas de Decisão Simples SE... FIM SE

Explicação do Código

Agora, observe:

O que cada um dos algoritmos acima faz?

Observando os algoritmos acima, você pode concluir que um SE encadeado pode, algumas vezes, ser equivalente a um SE simples, com a utilização de duas expressões lógicas combinadas. Você lembra que os operadores lógicos E, NÃO e OU são utilizados para combinar duas ou mais expressões relacionais ou lógicas? Agora é uma excelente hora para retornar a aula sobre operadores lógicos, caso esse assunto ainda não esteja claro!

No algoritmo da direita, vemos uma combinação de duas expressões que podem ter por resultado um valor verdadeiro ou falso. Está fazendo sol? Além disso, tenho dinheiro? Se as duas condições forem atendidas, eu vou à praia. Ou seja, utilizamos apenas um comando SE, porém, com uma expressão combinada.

Já no algoritmo da esquerda, como vimos anteriormente, ocorre o mesmo, porém, utilizamos dois comandos SE separadamente.

Veja que o código exibido na área destacada, no algoritmo do triângulo, que resolvemos há pouco, poderia ser substituído, sem alterações no resultado final, pelo seguinte código:

se (lado3 < lado1 + lado2) e (lado2 < lado1 + lado3) e (lado1 < lado2 + lado3) entao

escreval("Os lados formam um triângulo.")

fimSe

Existem, porém, casos de estruturas encadeadas que NÃO PODEM ser substituídas por combinações de expressões lógicas. Isso ocorre quando, após o teste da primeira condição, há algum comando, ou bloco de comandos, que deve ser executado antes do teste da condição seguinte. Por exemplo:

No exemplo, não poderíamos utilizar a expressão: "Se fizer sol E Se tiver muita gente lá", pois só vou até a praia se fizer sol. Mas, só posso saber se tem muita gente lá, depois que eu tiver ido. Ou seja, só posso testar a segunda condição após a execução do comando que depende da primeira.

Vejamos outro exemplo.

Versão 5.3 - Todos os Direitos reservados