# 1. QUESTÃO
try:
num1 = float(input("Digite o primeiro número: "))
num2 = float(input("Digite o segundo número: "))
divisao = num1 / num2
except ZeroDivisionError:
print("Erro: não é possível dividir por zero.")
except ValueError:
print("Erro: você deve digitar apenas números.")
else:
print(f"Resultado da divisão: {divisao}")
finally:
print("Programa encerrado.")
# 2. QUESTÃO
idades = {
'Júlia': 16,
'Carol': 23,
'Alberto': 19,
'Roberta': 17
}
try:
nome = input("Digite um nome: ")
resultado = idades[nome]
except KeyError:
print("Nome não encontrado")
else:
print(f"Idade: {resultado}")
# 3. QUESTÃO
def converter_para_float(lista):
try:
lista_float = [float(valor) for valor in lista]
except ValueError as erro:
print(f"Erro do tipo ValueError: {erro}")
except TypeError as erro:
print(f"Erro do tipo TypeError: {erro}")
else:
return lista_float
finally:
print("Fim da execução da função")
lista = ['1.5', 'abc', '3']
resultado = converter_para_float(lista)
print(resultado)
# 4. QUESTÃO
def agrupar_listas(lista1, lista2):
try:
if len(lista1) != len(lista2):
raise IndexError(
'A quantidade de elementos em cada lista é diferente.'
)
resultado = []
for i in range(len(lista1)):
tupla = (
lista1[i],
lista2[i],
lista1[i] + lista2[i]
)
resultado.append(tupla)
except IndexError as erro:
print(f"Erro do tipo IndexError: {erro}")
except TypeError as erro:
print(f"Erro do tipo TypeError: {erro}")
else:
return resultado
finally:
print("Fim da execução da função")
# 5. QUESTÃO
def corrigir_provas(gabarito, testes):
try:
notas = []
for teste in testes:
nota = 0
for i in range(len(teste)):
if teste[i] not in ['A', 'B', 'C', 'D']:
raise ValueError(
f"A alternativa {teste[i]} não é uma opção de alternativa válida"
)
if teste[i] == gabarito[i]:
nota += 1
notas.append(nota)
except ValueError as erro:
print(f"Erro: {erro}")
else:
return notas
# 6. QUESTÃO
def verificar_pontuacao(lista):
try:
for palavra in lista:
if (
',' in palavra or
'.' in palavra or
'!' in palavra or
'?' in palavra
):
raise ValueError(
f'O texto apresenta pontuações na palavra "{palavra}".'
)
except ValueError as erro:
print(f"Erro: {erro}")
else:
print("Texto sem pontuações.")
# 7. QUESTÃO
def divide_colunas(pressoes, temperaturas):
try:
if len(pressoes) != len(temperaturas):
raise ValueError(
"As listas precisam ter o mesmo tamanho."
)
resultados = []
for pressao, temperatura in zip(pressoes, temperaturas):
if temperatura == 0:
raise ZeroDivisionError(
"Não é possível dividir por zero."
)
resultados.append(pressao / temperatura)
except ValueError as erro:
print(f"Erro do tipo ValueError: {erro}")
except ZeroDivisionError as erro:
print(f"Erro do tipo ZeroDivisionError: {erro}")
else:
return resultados
finally:
print("Fim da execução da função.")