Aula 03
Estruturas Condicionais
Agenda
•
Operadores Relacionais
•
Estrutura Condicional
•
Operadores Lógicos
É comum nos algoritmos surgirem
situações em que a execução de uma ação
está sujeita a uma certa
condição
Exemplos:
• Um algoritmo de como ir para praia deve
testar se está chovendo.
• O algoritmo para saber se um aluno passou de
ano deve testar se a nota do aluno é maior
que 60 e se o número de faltas é menor que o
limite.
• Um algoritmo para descrever a sequência -1,
2, -3, 4, -5, ..., deverá testar se o número é par ou ímpar.
Operadores Relacionais
São utilizados para comparar os elementos de um conjunto e retornam um valor lógico
(Verdadeiro ou Falso). >> 2 == 2 True >> 2 == 3 False >> 3 > 2 True >> 2.55 <= 5 True >> 5.27 != 3 True >> “oi” == “oi” True >> 2 == “2” False >> “bola” < “casa” True Exemplos Exemplos
Operadores Relacionais
Igualdade/Diferença ==, != Menor/Maior/Menor ou Igual/Maior ou Igual <, >, <=, >=Estrutura Condicional Simples - IF
A estrutura condicional permite a escolha de grupos de ações e estruturas a serem
executadas com base em alguma condição.
>> X = 3 >> if X % 2 != 0: print(“X eh impar”) X eh impar >> if X % 2 == 0: print (“X eh par”) >>
Exemplo (em Python) • Se não estiver chovendo,
então vou à praia. • Se a minha nota for
menor que 60, farei prova final.
• Se tenho mais de 65 anos, irei me aposentar.
• Se estiver com fome, vou almoçar.
Estrutura Condicional Simples - IF
A estrutura condicional permite a escolha de grupos de ações e estruturas a serem
executadas com base em alguma condição.
>> X = 3 >> if X % 2 != 0: print(“X eh impar”) X eh impar >> if X % 2 == 0: print (“X eh par”) >>
Exemplo (em Python)
IF significa SE em inglês.
Exercícios Resolvido
Crie um programa em Python que leia um numero do teclado e verifique se é o número 6.
numero = input("Digite um numero: ")
if (numero == "6"):
Exercícios Resolvido
Crie um programa em Python que leia um numero do teclado e verifique se ele é múltiplo de 6.
numero = float(input("Digite um numero: "))
if (numero % 6 == 0):
Observação
As instruções que estiverem com o mesmo
deslocamento da margem (indentação) serão
executadas se a condição for satisfeita.
Instrução 1 Instrução 2 Instrução 3 Instrução 4 if condição: Instrução 5 Instrução 6 Instrução 7
Estrutura Condicional Composta – IF/ELSE
Usando estruturas condicionais compostas, é possível executar um trecho de instruções se
uma condição for verdadeira e, caso contrário, executar outro trecho de instruções.
Se não estiver chovendo, vou caminhar. Senão, vou assistir um filme em casa. Se estou com fome, vou almoçar. Senão, vou continuar estudando
>> X = 10 >> if X * 20 > 500: print(“Maior que 500”) else: print(“Menor que 500”) Menor que 500 >>
Estrutura Condicional Composta – IF/ELSE
Usando estruturas condicionais compostas, é possível executar um trecho de instruções se
uma condição for verdadeira e, caso contrário, executar outro trecho de instruções.
>> X = 10 >> if X * 20 > 500: print(“Maior que 500”) else: print(“Menor que 500”) Menor que 500 >> ELSE significa SENÃO em inglês
Estrutura Condicional – Exercícios Básicos
1. Receba a idade de uma pessoa e mostre na tela se ela é maior de idade ou menor.
2. Receba o tempo total de trabalho de uma pessoa e mostre na tela “parabéns” se ela já pode se aposentar e, caso contrário, o número de anos que faltam.
3. Faça um programa que calcule as raízes de uma equação do segundo grau testando se o valor de delta é válido.
Operadores Lógicos
São conectores utilizados para construir novas proposições lógicas a partir de outras já
conhecidas.
1. O dia está quente e ensolarado.
2. Amanhã vou jogar futebol ou vou no shopping. 3. Josefa é legal e inteligente.
4. No final de semana não fez sol e eu não saí de casa. Exemplos
Operadores Lógicos – E (AND)
Melinda é bonita
e
simpática
• Se Melinda for bonita e simpática a frase será
verdadeira?
• Se Melinda não for bonita, mas for simpática, a frase será verdadeira?
• Se Melinda não for simpática, mas for bonita, a frase será verdadeira?
• Se Melinda não for bonita nem simpática a frase
Operadores Lógicos – E (AND)
Melinda é bonita
e
simpática
• Duas proposições podem ser combinadas pelo conectivo e para formar uma
conjunção das proposições originais.
• A conjunção é verdadeira se, e somente se,
Operadores Lógicos – E (AND)
A: Melinda é bonita
B: Melinda é simpática
A e B B é Verdadeiro B é Falso A é Verdadeiro Verdadeiro Falso
A é Falso Falso Falso
Operadores Lógicos – E (AND)
2 > 1 e 2 é par
(2 > 1) ⋀ (2 é par)
(2 > 1) and (2 % 2 == 0)
Representação em Lógica Representação em PythonExemplo
Faça um programa em Python que receba como entrada a nota final de um aluno e o número de faltas em formato percentual e escreva na tela se
Operadores Lógicos – OU (OR)
Armando é jogador de futebol ou de basquete
• Se Armando for jogador de futebol e de basquete a afirmação será verdadeira?
• Se Armando não for jogador de futebol, mas for jogador de basquete, a afirmação será verdadeira? • Se Armando não for jogador de basquete, mas for
jogador de futebol, a afirmação será verdadeira?
• Se Armando não for nem jogador de basquete nem de futebol a afirmação será verdadeira?
Operadores Lógicos – OU (OR)
Armando é jogador de futebol ou de basquete
• Duas proposições podem ser combinadas pelo conectivo ou para formar uma
disjunção das proposições originais.
• A disjunção é verdadeira se, e somente se,
pelo menos uma das proposições for verdadeira.
Operadores Lógicos – OU (OR)
A: Armando é jogador de futebol B: Armando é jogador de basquete
A ou B B é Verdadeiro B é Falso A é Verdadeiro Verdadeiro Verdadeiro
A é Falso Verdadeiro Falso
Operadores Lógicos – OU (OR)
2 > 1 ou 2 é par
(2 > 1) ∨ (2 é par)
(2 > 1) or (2 % 2 == 0)
Representação em Lógica Representação em PythonExemplo
Faça um programa em Python que receba como entrada a nota final de um aluno e o número de faltas em formato percentual e escreva na tela se
Operadores Lógicos – NÃO (NOT)
O anel
não
é de ouro
• Se o anel for de ouro, a afirmação é verdadeira?
• Se o anel não for de ouro, a afirmação é verdadeira?
Operadores Lógicos – NÃO (NOT)
O anel
não
é de ouro
• A negação de uma proposição pode ser obtida
escrevendo “É falso que” antes da proposição
ou utilizando o termo não quando possível.
• A negação é verdadeira se a proposição inicial
for falsa. Da mesma forma, a negação é falsa se a proposição inicial for verdadeira.
Operadores Lógicos – NÃO (NOT)
A: O anel é de ouro
É falso que A A é Verdadeiro Falso A é Falso Verdadeiro Tabela VerdadeOperadores Lógicos – NÃO (NOT)
É falso que 2 é par
¬
(2 é par)
not (2 % 2 == 0)
Representação em Lógica
Associações de Operadores
Os conectivos AND, OR e NOT podem ser
associados para criar proposições mais
complexas.
Se o time vencer ou se empatar e o vice não ganhar, então o time será campeão
Exemplo
Para que a afirmação tenha o sentido esperado, qual deverá ser a ordem de avaliação dos conectivos?