Начинающий: создание списка с делителями - PullRequest
0 голосов
/ 14 марта 2020

Я только начал изучать Python и застрял с упражнением. Программа должна запросить у пользователя число, а затем распечатать список, включающий все делители числа.

myList = []
usernumber = int(input("Please enter a number: "))
a = int(1)

for a in range(1, usernumber):
    while usernumber % a == 0:
    divisor = usernumber / a
    myList.append(divisor)
    a += 1

print(*myList)

Кажется, это работает для всех, кроме 1, но я не могу понять, что у меня есть изменить, чтобы он работал для ввода 1. Любые идеи?

1 Ответ

0 голосов
/ 14 марта 2020

Попробуйте это:

myList = []
usernumber = int(input("Please enter a number: "))
#No need to declare a as an integer, for loop does that for you.

for a in range(1, usernumber+1):

    #usernumber+1 as range() does not include upper bound.

    #For each number leading up to the inputted number, if the
    #remainder of division is 0, then add to myList.

    if usernumber % a == 0:
        myList.append(a)

print(myList)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...