3
respostas

Resoluções dos exercícios

#1 - Crie uma lista para cada informação a seguir:

#Lista de números de 1 a 10;

#numeros = [1,2,3,4,5,6,7,8,9,10]

#for numeros in numeros:
   # print(f'{numeros}')
#Lista com quatro nomes;

#nomes = ['Igor', 'Daniel', 'Vanessa', 'Gabriela']

#for nomes in nomes:
  #  print(f'{nomes}')

#Lista com o ano que você nasceu e o ano atual.
#Duas maneiras de mostrar o que foi pedido.

# data_atual = ['04/09/2024']
# data_de_nascimento = ['11/12/1997']

# for data_atual in data_atual:
#    print(f'Data atual: {data_atual}')
#    for data_de_nascimento in data_de_nascimento:
#        print (f'Sua data de nascimento é: {data_de_nascimento}')    

#import datetime

#ano_nascimento = 1997
#ano_atual = 2024
#lista_anos = [ano_nascimento, ano_atual]

#print(lista_anos)

#2 - Crie uma lista e utilize um loop for para percorrer todos os elementos da lista.

#import datetime
    #essa lista percorrerá o ano do meu nascimento até o ano atual.
    #ano_nascimento = 1997
    #ano_atual = datetime.datetime.now().year

   # lista_dos_anos = []

   # for ano in range(ano_nascimento, ano_atual +1):
     #   lista_dos_anos.append(ano)

    #print(lista_dos_anos)

#3 - Utilize um loop for para calcular a soma dos números ímpares de 1 a 10.
    
# lista_numeros = [1,2,3,4,5,6,7,8,9,10]
# soma_impares = 0
# lista_impares = []
# for numero in lista_numeros:
 
#    if numero % 2 != 0:
#         lista_impares.append(numero)
#         soma_impares += numero
# print(lista_impares)

# print(f'A soma dos ímpares é: {soma_impares}')

#4 - Utilize um loop for para imprimir os números de 1 a 10 em ordem decrescente.
# lista_numeros = [1,2,3,4,5,6,7,8,9,10]
# lista_numeros = sorted (lista_numeros, reverse=True)
# lista_decrescente = []
# for numero in lista_numeros:
#     lista_decrescente.append(numero)

# print(f"A ordem da lista decrescente é: ", lista_decrescente)

#5 - Solicite ao usuário um número e, em seguida, utilize um loop for para imprimir a tabuada desse número, indo de 1 a 10.

# numero = int(input("Digite um numero: "))

# print(f"A tabuada do Número é: {numero} ")
# for x in range(1,11):
#     resultado = numero * x 

#     print(f"{numero} x {x} = {resultado}")

#6 - Crie uma lista de números e utilize um loop for para calcular a soma de todos os elementos. Utilize um bloco try-except para lidar com possíveis exceções.

# lista_numeros = [1,2,3,15,18,22,64,88,99,20,200,67,782,98,555,458,555]
# soma = 0
# for numero in lista_numeros:
#     try:
    
#        soma += (numero)

#     except:
#         print("Opção não é Válida:\n")

# print(f"A soma da lista foi: {soma}")

#7 - Construa um código que calcule a média dos valores em uma lista. Utilize um bloco try-except para lidar com a divisão por zero, caso a lista esteja vazia.

# lista_numeros = []
# soma = 0
# i = 10

# while i > 0:  # Garante que o loop execute 10 vezes
  
#         numero = float(input("Digite um número: "))  # Converte o input para float
#         lista_numeros.append(numero)
#         soma += numero
# try:
    
#     if lista_numeros:  # Verifica se a lista não está vazia
#         media = soma / len(lista_numeros)
#         print(f"A média dos valores na lista é: {media}")
#     else:
#         print("A lista está vazia. Não é possível calcular a média.")
# except ZeroDivisionError:
#     print("Erro: Divisão por zero ao calcular a média.")

# print(f"A soma da lista foi: {soma}")
3 respostas

Bom dia Igor! Tudo bem com você?

Meus parabéns pela resolução dos exercícios, fico feliz que tenha compartilhado com a comunidade do fórum Alura.

Gostaria de aproveitar a oportunidade e sugerir uma pequena correção no código do exercício 7. Atualmente, esse código está entrando no loop, mas nunca está subtraindo o valor de i, o que está causando um loop infinito. Para resolver isso, basta adicionar a decrementeação de i dentro do laço, dessa forma o while será executado até que i chegue a 0. O código ficará da seguinte forma:

while i > 0: 
    numero = float(input("Digite um número: "))
    lista_numeros.append(numero)
    soma += numero
    i -= 1  # Decrementa o valor de 'i' a cada iteração para não ter loop infinito

Código completo do exercício 7 com a correção aplicada:

lista_numeros = []
soma = 0
i = 10

while i > 0: 
    numero = float(input("Digite um número: "))
    lista_numeros.append(numero)
    soma += numero
    i -= 1  # Decrementa o valor de 'i' a cada iteração para não ter loop infinito
try:    
    if lista_numeros:  # Verifica se a lista não está vazia
        media = soma / len(lista_numeros)
        print(f"A média dos valores na lista é: {media}")
    else:
        print("A lista está vazia. Não é possível calcular a média.")
except ZeroDivisionError:
    print("Erro: Divisão por zero ao calcular a média.")

print(f"A soma da lista foi: {soma}")

Espero ter ajudado. Conte com o apoio do Fórum na sua jornada. Fico à disposição. Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado
#7 - Construa um código que calcule a média dos valores em uma lista. Utilize um bloco try-except para lidar com a divisão por zero, caso a lista esteja vazia.

# lista_numeros = []
# soma = 0
# i = 10

# while i > 0:  # Garante que o loop execute 10 vezes
  
#         numero = float(input("Digite um número: "))  # Converte o input para float
#         lista_numeros.append(numero)
#         soma += numero
#         i -= 1
# try:
    
#     if lista_numeros:  # Verifica se a lista não está vazia
#         media = soma / len(lista_numeros)
#         print(f"A média dos valores na lista é: {media}")
#     else:
#         print("A lista está vazia. Não é possível calcular a média.")
# except ZeroDivisionError:
#     print("Erro: Divisão por zero ao calcular a média.")

# print(f"A soma da lista foi: {soma}")

Oiii Igor!

Agora sim o loop está sendo executado corretamente e finalizando após 10 iterações :)

No GIF abaixo apresento a execução do teste do código:

GIF apresentando a execução do código do estudante

Continue estudando e conte com a Alura para evoluir sua carreira. Abraços e bons estudos!