Как мне распечатать одно факториальное число? Мой код продолжает печатать слишком много цифр, и я не знаю, почему?

#python

Вопрос:

#Python Распечатывает Факториальное число

#Ввод запросите номер

 iMax = int(input("What is the number to factorialize: "))  iFactorial = 1 iCount = 1  

В то время как цикл

 while iCount lt;= iMax:  iFactorial = iFactorial * iCount  iCount = iCount   1  

Факториал печати

 print("factorial of ", iMax, " is ", iFactorial)  

Комментарии:

1. он печатает только 1 ответ

2. @cmgchess Код кажется правильным, в нем может быть какая-то ошибка отступа.

3. Вот что я получаю, Какое число нужно разложить на множители: 4 факториала из 4-это 1 факториал из 4-это 2 факториала из 4-это 6 факториал из 4-это 24

4. Я хочу, чтобы он напечатал только 24, а не все остальные числа

5. @мэг ага попалась. ваш код в полном порядке. единственная ошибка заключается в том, что у вас есть инструкция печати внутри цикла while, поэтому она печатается в цикле

Ответ №1:

Здесь у вас есть лучший способ вычисления факториала:

 num = int(input()) fac = 1  for i in range(1, num   1):  fac *= i  print("The factorial of", num, "is", fac)  

Комментарии:

1. @meg Пожалуйста, проголосуйте за вопрос, был ли он полезным.

2. О, хорошо, я действительно сожалею, что я новичок во всем этом!