Informática, perguntado por EvangelineSamos, 9 meses atrás

PYTHON
Faça um programa que leia um número positivo e imprima seus divisores

Soluções para a tarefa

Respondido por jvsn375
2

Resposta:

def divisors(n: int) -> [int]:

   answer = []

   for num in range(1, n + 1):

       if n % num == 0:

           answer.append(num)

   return answer

def main():

   num = int(input())

   print(divisors(num))

if __name__ == '__main__':

   main()      

Explicação:

Existem diversas formas de fazer esse algoritmo. Estou mostrando uma delas que consiste em procurar entre todos os números de 2 até n, inclusive, aqueles que satisfazem n % teste == 0.

A complexidade de tempo é O(n).

Uma forma reduzida seria simplesmente

def main():

   num = int(input())

   print([n for n in range(1, num + 1) if num % n== 0])

Perguntas interessantes