Olá, comunidade do Python!

Meu nome é Victor Dib, e sou um estudante brasileiro de programação.

Já entrei em contato com vocês hoje, e vocês solicitaram que eu me inscrevesse 
na lista de e-mails de vocês primeiro. Bom, isso já foi feito, então espero que 
agora vocês possam dar atenção ao meu caso.

Já sou um usuário de nível iniciante pra médio da linguagem Python. Mas 
recentemente tive um problema no uso da linguagem.
Ao construir uma função que encontra números perfeitos, percebi que a linguagem 
não estava realizando corretamente a inserção de novos dados inteiros à uma 
lista. Encaminharei imagens para demonstrar o meu problema.

Tive problemas com a versão 3.9.2 da linguagem. Mas também usei a versão 3.8.7 
(por ser marcada como estável no site da linguagem), e igualmente tive 
problemas.

Acredito que não haja problemas em minha lógica, e por isso gostaria que vocês 
desse m uma olhada para ter certeza de que não é um problema na linguagem.

Odiaria que uma linguagem tão incrível como o Python não funcionasse como 
deveria. Por isso, por favor, verifiquem meu caso!

Obrigado!

O programa que escrevi para encontrar números perfeitos:



def num_perf_inf(n):
    divisors = []
    perfects = []
    limit = n - 1
    for i in range(1, limit):
        dividend = i + 1
        for j in range(i):
            divisor = j + 1
            if dividend % divisor == 0:
                divisors.append(divisor)
        print(f'Divisors of {i + 1}: {divisors}')

        divisors.pop()
        if sum(divisors) == dividend:
            perfects.append(i)
        divisors.clear()
    print(perfects)


num_perf_inf(28)

E o resultado da execução desse código, em Python 3.9.2 e em Python 3.8.7 (como 
já mencionado, testei as duas versões da linguagem:


Divisors of 2: [1]
Divisors of 3: [1]
Divisors of 4: [1, 2]
Divisors of 5: [1]
Divisors of 6: [1, 2, 3]
Divisors of 7: [1]
Divisors of 8: [1, 2, 4]
Divisors of 9: [1, 3]
Divisors of 10: [1, 2, 5]
Divisors of 11: [1]
Divisors of 12: [1, 2, 3, 4, 6]
Divisors of 13: [1]
Divisors of 14: [1, 2, 7]
Divisors of 15: [1, 3, 5]
Divisors of 16: [1, 2, 4, 8]
Divisors of 17: [1]
Divisors of 18: [1, 2, 3, 6, 9]
Divisors of 19: [1]
Divisors of 20: [1, 2, 4, 5, 10]
Divisors of 21: [1, 3, 7]
Divisors of 22: [1, 2, 11]
Divisors of 23: [1]
Divisors of 24: [1, 2, 3, 4, 6, 8, 12]
Divisors of 25: [1, 5]
Divisors of 26: [1, 2, 13]
Divisors of 27: [1, 3, 9]
[23]


-- 
https://mail.python.org/mailman/listinfo/python-list

Reply via email to