Faça uma função que receba duas listas por parâmetro e retorne uma lista contento o produto entre

os elementos de mesmo índice da lista. E seguida, implemente uma
função que receba as três listas por parâmetro e armazene em um arquivo o conteúdo delas. No
programa principal, além de receber os dados das duas listas pelo usuário, faça a leitura do
arquivo e imprima os valores na tela.

1 Resposta

  • Aryadne Santtos

    O programa abaixo (e também anexado) não conta com validação de dados ou tratamento de erros/exceções, assim espera-se que o usuário entre com os dados de acordo com o que foi estabelecido no exercício.

    Por exemplo, caso sejam enviados dados não inteiros (int), será retornado uma exceção ValueError, ou seja, de forma simples, o Python não será capaz de converter o dado em um número inteiro. Note também que não foi estabelecido o tamanho das listas e, caso seja enviado listas de tamanhos diferentes, teremos um IndexError ao tentar criar a 3ª lista.

    Ainda, foi feita uma consideração que não foi explicitado no texto, estamos considerando listas de dados inteiros (int), mas nada impede que tenhamos listas de dados em ponto flutuante (float), para isso deveria-se mudar a função de casting utilizada.

    Obs.: Os pontos que precedem algumas das linhas de programação não fazem parte do programa, foram colocados apenas para garantir a indentação do código aqui no site.

    [Python 3.8]

    def mult_listas(lst_1, lst_2):

    .....lst_3 = list()

    .....for i in range(len(lst_1)):

    ..........lst_3.append(lst_1[i]*lst_2[i])

    .....return lst_3

    def arquivamento(lst_1, lst_2, lst_3):

    .....f = open('listas.txt', "w")

    .....for i in lst_1:

    ..........f.write(f'{i} ')

    .....f.write('n')

    .....for i in lst_2:

    ..........f.write(f'{i} ')

    .....f.write('n')

    .....for i in lst_3:

    ..........f.write(f'{i} ')

    .....f.close()

    lista_1 = list()

    lista_2 = list()

    lst_aux = str(input('Digite a 1ª lista (valores separados por espaço simples):n')).split()

    for c in lst_aux:

    .....lista_1.append(int(c))

    lst_aux = str(input('Digite a 2ª lista (valores separados por espaço simples):n')).split()

    for c in lst_aux:

    .....lista_2.append(int(c))

    lista_3 = mult_listas(lista_1 , lista_2)

    arquivamento(lista_1, lista_2, lista_3)

    print('nDados armazenados no arquivo listas.txt:n')

    f = open('listas.txt', 'r')

    print(f.read())

    f.close()

    Huge{begin{array}{c}Delta tt{!!!!!!,,o}!!!!!!!!:,perpend{array}}Qualquer~dacute{u}vida,~deixe~ um~comentacute{a}rio


    Faça uma função que receba duas listas por parâmetro e retorne uma lista contento o produto entre o

Clique aqui para adicionar a sua resposta.