Aprenda a criar Funções em Python
As funções são uma parte essencial da programação em Python. Elas permitem organizar o código em blocos reutilizáveis, evitando repetições e tornando o programa mais eficiente e legível.
QUESTÃO 1 - Simulação de Semáforo
João deseja criar um programa que simula o funcionamento de um semáforo. O programa deve solicitar ao usuário uma cor do semáforo e exibir a ação correspondente.
REGRAS:
- Se a cor informada for “vermelho”, exibir “Pare”.
- Se a cor informada for “amarelo”, exibir “Atenção”.
- Se a cor informada for “verde”, exibir “Siga”.
- Se for digitada uma cor inválida, exibir “Cor inválida!”.
PASSOS:
- Solicite ao usuário uma cor do semáforo.
- Utilize
if
aninhado para verificar a cor informada. - Exiba a ação correspondente.
def semaforo(cor):
if cor.lower() == "verde":
return "Pode atravessar."
elif cor.lower() == "amarelo":
return "Atenção! O sinal vai fechar."
elif cor.lower() == "vermelho":
return "Pare! Espere o sinal abrir."
else:
return "Cor inválida. Digite 'Verde', 'Amarelo' ou 'Vermelho'."
def main():
cor = input("Digite a cor do semáforo: ")
print(semaforo(cor))
if __name__ == "__main__":
main()
QUESTÃO 2 - Detector de Fadiga Baseado em Horas de Sono
Mariana deseja criar um programa que analise a quantidade de horas dormidas e informe se a pessoa está bem descansada ou com fadiga.
REGRAS:
- Se a pessoa dormiu menos de 5 horas, exibir “Alerta! Você está com fadiga severa.”
- Se dormiu entre 5 e 6 horas, exibir “Cuidado! Você pode sentir fadiga durante o dia.”
- Se dormiu entre 7 e 9 horas, exibir “Ótimo! Você está bem descansado.”
- Se dormiu mais de 9 horas, exibir “Você dormiu bastante! Mas evite exageros.”
PASSOS:
- Solicite ao usuário a quantidade de horas dormidas.
- Utilize
if
aninhado para classificar o nível de descanso. - Exiba a mensagem correspondente.
def analisar_fadiga(horas_sono):
"""Determina o nível de fadiga com base nas horas dormidas."""
if horas_sono < 5:
return "Alerta! Você está com fadiga severa."
elif horas_sono <= 6:
return "Cuidado! Você pode sentir fadiga durante o dia."
elif horas_sono <= 9:
return "Ótimo! Você está bem descansado."
else:
return "Você dormiu bastante! Mas evite exageros."
def main():
"""Solicita a quantidade de horas dormidas e exibe o resultado."""
horas_sono = int(input("Quantas horas você dormiu? "))
resultado = analisar_fadiga(horas_sono)
print(resultado)
# Garante que o programa só seja executado se não for importado
if __name__ == "__main__":
main()
QUESTÃO 3 - Cálculo do Tempo de Carregamento de um Celular
Lucas deseja criar um programa que calcule o tempo necessário para carregar um celular até 100% com base no nível atual da bateria.
REGRAS:
- O carregador utilizado carrega 20% da bateria por hora.
- O programa deve receber o nível atual da bateria (entre 0 e 100%).
- O programa deve calcular e exibir quantas horas serão necessárias para atingir 100%.
- Se a bateria já estiver 100%, exibir a mensagem “A bateria já está carregada!”.
PASSOS:
- Criar uma função
calcular_tempo_carregamento(bateria_atual)
que calcula o tempo necessário para atingir 100%. - Criar uma função
main()
que solicita o nível da bateria e chamacalcular_tempo_carregamento()
. - Garantir que
main()
seja executado apenas se o arquivo for executado diretamente.
def calcular_tempo_carregamento(bateria_atual):
"""Calcula o tempo necessário para carregar a bateria até 100%."""
if bateria_atual >= 100:
return "A bateria já está carregada!"
bateria_restante = 100 - bateria_atual
tempo_necessario = bateria_restante / 20 # 20% por hora
return f"Tempo estimado para carga completa: {tempo_necessario:.1f} horas."
def main():
"""Solicita o nível da bateria e exibe o tempo necessário para carregar."""
bateria_atual = int(input("Digite o nível atual da bateria (0 a 100%): "))
if 0 <= bateria_atual <= 100:
resultado = calcular_tempo_carregamento(bateria_atual)
print(resultado)
else:
print("Erro: O nível da bateria deve estar entre 0 e 100.")
# Garante que o programa só seja executado se não for importado
if __name__ == "__main__":
main()
QUESTÃO 4 - Simulação de Previsão do Tempo para Escolher uma Roupa
Mariana quer um programa que ajude a escolher a roupa ideal com base na temperatura do dia.
REGRAS:
- O programa deve solicitar ao usuário a temperatura atual em graus Celsius (°C).
- Com base na temperatura informada, o programa deve sugerir um tipo de roupa adequado.
ORIENTAÇÕES:
- Se a temperatura for 30°C ou mais → “Está muito quente! Use roupas leves e beba bastante água.”
- Se a temperatura for entre 20°C e 29°C → “O tempo está agradável! Use roupas confortáveis.”
- Se a temperatura for entre 10°C e 19°C → “Está um pouco frio. Leve um casaco!”
- Se a temperatura for abaixo de 10°C → “Está muito frio! Vista roupas quentes e evite sair sem necessidade.”
PASSOS:
- Criar uma função
sugerir_roupa(temperatura)
que analisa a temperatura e retorna a recomendação de vestimenta. - Criar uma função
main()
que solicita a temperatura ao usuário e exibe a recomendação. - Garantir que o código só seja executado quando o arquivo for rodado diretamente.
def sugerir_roupa(temperatura):
"""Sugere um tipo de roupa com base na temperatura."""
if temperatura >= 30:
return "Está muito quente! Use roupas leves e beba bastante água."
elif 20 <= temperatura < 30:
return "O tempo está agradável! Use roupas confortáveis."
elif 10 <= temperatura < 20:
return "Está um pouco frio. Leve um casaco!"
else:
return "Está muito frio! Vista roupas quentes e evite sair sem necessidade."
def main():
"""Solicita a temperatura ao usuário e exibe a sugestão de roupa."""
temperatura = float(input("Digite a temperatura atual (°C): "))
print(sugerir_roupa(temperatura))
# Garante que o código só seja executado quando o script for rodado diretamente
if __name__ == "__main__":
main()
QUESTÃO 5 - Verificação de Validade de Senha
João precisa criar um programa que valide senhas com base em critérios de segurança.
Regras:
- A senha deve atender aos seguintes requisitos:
- Ter pelo menos 8 caracteres.
- Conter pelo menos uma letra maiúscula.
- Conter pelo menos um número.
- Conter pelo menos um caractere especial (como
@, #, $, %, &, *
).
Se a senha atender a todos os critérios, o programa deve exibir "Senha válida!"
. Caso contrário, deve indicar "Senha inválida! Tente novamente."
.
Passos:
- Criar a função
verificar_senha(senha)
que analisa a senha e verifica se atende aos critérios. - Criar a função
main()
que solicita a senha ao usuário e exibe o resultado. - Garantir que o código só seja executado quando o arquivo for rodado diretamente.
def verificar_senha(senha):
# Verifica tamanho
if len(senha) < 8:
return False
# Verifica letra maiúscula
tem_maiuscula = False
for letra in senha:
if letra.isupper():
tem_maiuscula = True
break
# Verifica número
tem_numero = False
for letra in senha:
if letra.isdigit():
tem_numero = True
break
# Verifica caractere especial
especiais = "@#$%&*"
tem_especial = False
for letra in senha:
if letra in especiais:
tem_especial = True
break
return tem_maiuscula and tem_numero and tem_especial
def main():
senha = input("Digite sua senha: ")
if verificar_senha(senha):
print("Senha válida!")
else:
print("Senha inválida! Tente novamente.")
if __name__ == "__main__":
main()
Caso o Python ainda não esteja instalado em seu dispositivo, clique no botão abaixo para realizar a instalação.