Факториал.
Условие:
Найти факториал числа используя рекурсию.
Код:
#####################################################################################################
"""В этом блоке применяется рекурсивный способ решения задачи """
#####################################################################################################
def factorial(digit):
if digit == 1: # базовый случай
result = 1
else: # рекурсия
result = digit * factorial(digit - 1)
return result
while True:
try:
digit = input("%100s" % "Введите целое число: ")
digit = int(digit)
except:
print("%99s" % "Вы ввели не число.")
print()
else:
break
result = factorial(digit)
print()
print("%99s" % result)
print("##########################################################################################################################")
#####################################################################################################
"""В этом блоке применяется не рекурсивный способ решения задачи """
#####################################################################################################
while True:
try:
digit = input("%100s" % "Введите целое число: ")
digit = int(digit)
except:
print("%99s" % "Вы ввели не число.")
print()
else:
break
result = 1
while True:
if digit == 1:
break
result *= digit
digit -= 1
print()
print("%99s" % result)