logo

Aula 11 – Algoritmo com python – Estruturas de decisão (IF/ELSE/ELIF) – Parte 2

Queridos alunos,

na videoaula anterior inciamos os estudos sobre estruturas de decisão, e nesta iremos continuar nossa abordagem a este assunto, desta vez com um pouco mais de profundidade.

Anteriormente vimos a estrutura em sua forma estrutural mais simples, com apenas uma condição e previsão de desvio para apenas dois blocos de códigos (dois cenários)….

Segue abaixo o conteúdo de nosso “quadro-branco”:

### ESTRUTURA DE TOMADA DE DECISÃO ###

Esta aula é a continuação da anterior, abordando o mesmo assunto, desta vez com um pouco mais de profundidade.

Antes, nós vimos estruturas de tomada de decisão com apenas 1 condição, e contemplando apenas dois cenários.

Desta vez, iremos abordar o mesmo exemplo anterior, fazendo uma gama diversificada de modificações no código utilizado anteriormente.

Apenas para lembrar o exemplo anterior…

*****************************************************

Exemplo na vida real:

– A mãe fala para o filho:

“SE você tirar nota boa, você pode jogar bola; SENÃO, você não poderá jogar bola!”

Observe:
1) a presença das partículas “SE” e “SENÃO”
2) A condição prevista “Tirar nota boa”
3) SE a condição “tirar nota boa” for VERDADEIRA, o filho poderá jogar bola (cenário 1)
4) se a condição “tirar nota boa” for FALSA, o filho não poderá jogar bola (cenário 2)

Sintaxe com base em python:

IF <condição>:
<bloco_de_comandos_a_serem_executados>

ELSE:
<bloco_de_comandos_a_serem_executados>

* Utilizando programação para decidir se o filho joga bola:

nota=str(input(“tirou nota boa? (sim/nao) –> “))

if nota == “sim”:
print(“Pode ir jogar bola!”)

else:
print(“Nao pode ir jogar bola!”)

print(“fim do código”)

*****************************************************

As perguntas que ficam são:

1) seria possível utilizar mais de uma condição?
2) seria possível contemplar mais de dois cenários?

A resposta é: SIM

veja:

Resposta 1) Utilizando os operadores lógicos AND e/ou OR é possível adicionar quantas condições quisermos

Resposta 2) Acrescentando a função auxiliar ELIF é possível adicionar mais cenários

Desta forma, para atender a “resposta 1″, veja como fica a sintaxe:

IF <condição1> and/or <condição2>… and/or <condição”X”> :
<bloco_de_comandos_a_serem_executados>

ELSE:
<bloco_de_comandos_a_serem_executados>

Nota: veja que é possível usar quantas condições quantas forem necessárias, bastando utilizar de forma adequada os operadores lógicos (AND/OR), de maneira a respeitar a logica que você precisa.

Para atender a “resposta 2″, criando vários blocos de execução, ao invés de apenas dois (estrutura padrão), a sintaxe deverá ficar assim:

IF <condiçao1>:
<bloco_de_comandos_a_serem_executados>

elif <condicao2>:
<bloco_de_comandos_a_serem_executados>

elif <condicao3>:
<bloco_de_comandos_a_serem_executados>

.
.
.

elif <condicao”x”>:
<bloco_de_comandos_a_serem_executados>

ELSE:
<bloco_de_comandos_a_serem_executados>

########### CÓDIGOS UTILIZADOS ###########

TESTE.PY:

nota=str(input(“tirou nota boa? (sim/nao) –> “))

comportamento=str(input(“se comportou bem? (sim/nao) –> “))

if nota == “sim” or comportamento == “sim”:
print(“Pode ir jogar bola!”)

else:
print(“Nao pode ir jogar bola!”)

TESTE2.PY:

nota=str(input(“tirou nota boa? (sim/nao) –> “))

comportamento=str(input(“se comportou bem? (sim/nao) –> “))

presenca=str(input(“Sempre esteve presente? (sim/nao) –> “))

if nota == “sim” and comportamento == “sim” and presenca == “sim”:
print(“Aprovado com louvor e merito”)

elif nota == “sim” and comportamento == “sim” and presenca == “nao”:
print(“Aprovado, mas faltou aulas”)

elif nota == “sim” and comportamento == “nao” and presenca == “sim”:
print(“Aprovado, apesar de mal comportamento”)

elif nota == “sim” and comportamento == “nao” and presenca == “nao”:
print(“Aprovado, apesar de mal comportamento e faltas”)

elif nota == “nao” and comportamento == “sim” and presenca == “sim”:
print(“Reprovado por nota, apesar de bom comportamento e nunca ter faltado”)

elif nota == “nao” and comportamento == “nao” and presenca == “nao”:
print(“Reprovado, por nota, faltas e mal comportamento”)

else:
print(“Alguma das respostas dadas não condizem com o esperado. responda apenas sim ou não”)

Assista o vídeo e entenda mais!

 



629 Visitas totais: 1 Visitas hoje:

Deixe um comentário

*

captcha *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Pular para a barra de ferramentas