1
resposta

Atividade "10 10 Hora da prática: listas, for e try except": Alguma sugestão de melhoria?

))) A resolução abaixo refere-se à atividade "10 Hora da prática: listas, for e try except": (https://cursos.alura.com.br/course/python-crie-sua-primeira-aplicacao/task/146584)

import os

# Tarefa1:
lista_1_a_10 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
lista_nomes = ['nome1', 'nome2', 'nome3', 'nome4']
lista_ano = [1994, 2024]

def erro():
    print('escreva um numero direito, seu animal!')
    input('\n Digite uma tecla para voltar ao menu principal')
    main()

def escolha_da_tarefa():
    try:
        escolha = int(input('Escolha qual tarefa executar (de 1 a 7): '))
        if escolha == 1:
            print('Esta tarefa não interage com o usuário.')
            input('\n Digite uma tecla para voltar ao menu principal')
            main()
        elif escolha == 2:
            Tarefa2()
        elif escolha == 3:
            Tarefa3()
        elif escolha == 4:
            Tarefa4()
        elif escolha == 5:
            Tarefa5()
        elif escolha == 6:
            Tarefa6()
        elif escolha == 7:
            Tarefa7()
        else:
            erro()
    except:
        erro()


def Tarefa2():
    # vamos usar uma lista da tarefa 1.
    print('Tarefa 2:')
    for nome in lista_nomes:
        print(f'{nome}')
    input('\n Digite uma tecla para voltar ao menu principal')
    main()

def Tarefa3():
    print('Tarefa 3:')
    x = 0

    for numero in lista_1_a_10:
        if numero % 2 == 1:
            x=x+numero
        else:
            x = x

    print('\n A soma dos numeros impares de 1 a 10 é igual a: ', x)
    input('\n Digite uma tecla para voltar ao menu principal')
    main()

def Tarefa4():
    print('Tarefa 4:')
    for item in reversed(lista_1_a_10):
        print(item)
    input('\n Digite uma tecla para voltar ao menu principal')
    main()

def Tarefa5(): # Tabuada
    print('Tarefa 5:')
    try:
        numero_tabuada = int(input('Escolha um numero para ver a tabuada: '))

        for multiplicador in lista_1_a_10:
            print(f'{numero_tabuada}x{multiplicador} = {numero_tabuada*multiplicador}') 
    except:
        erro()
    input('\n Digite uma tecla para voltar ao menu principal')
    main()

def Tarefa6():
    print('Tarefa 6:')
    print('\nPara concluir a soma, digite "=" (símbolo de igual) e aperte enter')

    lista_de_numeros = []

    while True:
        entrada = input('Digite um novo número para a soma ou "=" para encerrar: ')
        
        if entrada == '=':
            break
        
        try:
            numero_adicionado = float(entrada)
            lista_de_numeros.append(numero_adicionado)
        except ValueError:
            print("\nPor favor, digite um número válido.")
    
    # Cálculo da soma após o loop
    soma = 0
    for num in lista_de_numeros:
        soma += num
        
    print(f'\nA soma dos números {lista_de_numeros} é: {soma}')

    input('\n Digite uma tecla para voltar ao menu principal')
    main()

def Tarefa7():
    lista_para_media = [1, 5, 9, 15]

    soma = 0
    for valor in lista_para_media:
        soma = soma + valor # (ou soma += valor)
        media = soma/len(lista_para_media)
    
    print(f'A média dos valores {", ".join(map(str, lista_para_media))} é {media}')
    
    input('\n Digite uma tecla para voltar ao menu principal')
    main()



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


if __name__ == '__main__':
    main() #main é a função principal do programa, que não será importada de nenhum outro lugar.
1 resposta

Oi, Vinicius! Tudo bem?

Bom código, parabéns pelo projeto! Espero que esteja gostando do curso! Colocar em execução as atividades propostas pelo professor em aula é uma prática muito importante para internalizarmos o conteúdo. Caso tenha ficado alguma dúvida em relação ao curso ou atividade, sinta-se à vontade em comunicar, estou à disposição e ficarei super feliz em poder ajudar!

Um forte abraço e bons estudos!