1
resposta

Hora da prática: listas, for e try except

Apresentando a solução dos exercícios utilizando algumas técnicas apresentadas durante a aula.

import os

numeros = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
nomes = ['Ana', 'Bento', 'Carlos', 'Dalva']
ano = [1997, 2025]

cores = ['Azul','Verde', 'Vermelho', 'Rosa', 'Preto', 'Branco']

def selecione_exercicio():
    numero_exercicio = int(input('Selecione o exercício de 1 a 7 : \n'))
    if numero_exercicio == 1:
        exercicio1()
        menu()
        escolher_opcao()
    elif numero_exercicio == 2:
        exercicio2()
        loop()
    elif numero_exercicio == 3:
        exercicio3()
        loop2()  
    elif numero_exercicio == 4:
        exercicio4()
        loop3()
    elif numero_exercicio == 5:
        exercicio5()
        loop4()
    elif numero_exercicio == 6:
        exercicio6()
        try1()
    elif numero_exercicio == 7:
        exercicio7()
        try2()
    else:
        print('Número inválido.')

def exercicio1():
    print('1 - Crie uma lista para cada informação a seguir:\n')

def menu():
    print('1 - números')
    print('2 - nomes')
    print('3 - ano\n')

def escolher_opcao():
    opcao_escolhida = int(input('Qual lista você quer ver? \n'))

    if opcao_escolhida == 1:
        print(numeros)
    elif opcao_escolhida == 2:
        print(nomes)
    elif opcao_escolhida == 3:
        print(ano)
    else:
        print('Opção inválida')

def exercicio2():
    print('2 - Crie uma lista e utilize um loop for para percorrer todos os elementos da lista.\n')

def loop():
    for cor in cores:
        print(f'{cor}\n')

def exercicio3():
    print('3 - Utilize um loop for para calcular a soma dos números ímpares de 1 a 10.\n')

def loop2():
    soma_impar = 0
    for i in range(1, 11, 2):
        soma_impar += i
        print(soma_impar)

def exercicio4():
    print('4 - Utilize um loop for para imprimir os números de 1 a 10 em ordem decrescente.\n')

def loop3():
    for i in range(10, 0, -1):
        print(i)

def exercicio5():
    print('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.\n')

def loop4():
    numero_selecionado = int(input('Digite um número para multiplicar. \n'))
    for i in range (1, 11,1):
        print()
        print(numero_selecionado *i)

def exercicio6():
    print('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.\n')

def try1():
    soma = 0
    try:
        for numero in numeros:
            soma += numero
            print(f'Soma dos elementos:{soma}')
    except:
        print('Ocorreu um erro')

def exercicio7():
    print('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.\n')

def try2():
    soma_valores = 0
    try:
        for numero in numeros:
            soma_valores += numero
            media = soma_valores / len(numeros)
            print(f'A média é: {media}')
    except ZeroDivisionError:
        print('Não foi possivel dividir')
    except Exception as e:
            print('Ocorreu um erro')

def main():
    os.system('cls')
    selecione_exercicio()

if __name__ == '__main__':
    main()

Garanta sua matrícula hoje e ganhe + 2 meses grátis

Continue sua jornada tech com ainda mais tempo para aprender e evoluir

Quero aproveitar agora
1 resposta

Oi, Ygor! Como vai?

Agradeço por compartilhar.

Seu código ficou muito bem organizado e mostra domínio sobre listas, laços de repetição e tratamento de exceções. Gostei de como você estruturou as funções para cada exercício, isso deixa o código mais legível e fácil de manter.

Continue praticando essa separação em funções.

Conteúdos relacionados
Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!