Написание функции для поиска факториала введенного числа - PullRequest
0 голосов
/ 23 июня 2019

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

num = int(input("Please enter a number : "))
fact = num
lst = list(range(1, num + 1))
lst.sort(reverse = True)
print(lst)
for x in lst : 
    while x > 1:
        fact = fact * (x - 1)
print(fact)

1 Ответ

0 голосов
/ 23 июня 2019

Это потому что или твой while x>1.По сути, ваша программа зацикливается на фиксированное значение x, которое не изменится.Ты довольно близко:

num = int(input("Please enter a number : "))
fact = num
lst = list(range(1, num + 1))
lst.sort(reverse = True)
print(lst)
for x in lst : 
    if x > 1:
        fact = fact * (x - 1)
    else:
       break
print(fact)
...