Задача: Определение факториала заданного числа

Опубликован: 15.09.2024 22

Условие: напишите программу, которая вычисляет факториал введенного пользователем числа и печатает результат.

Факториал числа — это произведение всех целых чисел от 1 до искомого числа.

Решите задачу различными способами:

  • методом итерации;
  • методом рекурсии.

Решение:

1. Вычисление факториала числа методом итерации.

print('Программа вычисления факториала введенного числа')
print('---------------------------')

def factorial(num: int):
    x = 1
    for i in range(1, num + 1):
        x *= i
    return x

while True:
    num = int(input('Введите положительное целое число больше 0: '))
    if num < 0:
        print("Для отрицательных чисел факториал не определен")
    elif num == 0:
        print("Факториал 0 равен 1")
    else:
        break

print(f"Факториал {num} равен {factorial(num)}")

2. Вычисление факториала числа методом рекурсии.

def factorial(num: int):
    if num == 1:
        return num
    else:
        return num * factorial(num - 1)

while True:
    num = int(input('Введите положительное целое число больше 0: '))
    if num < 0:
        print("Для отрицательных чисел факториал не определен")
    elif num == 0:
        print("Факториал 0 равен 1")
    else:
        break

print(f"Факториал {num} равен {factorial(num)}")

Похожие посты

Задача: Решение квадратного уравнения

Задача: Тренажер таблицы умножения

Задача: Наибольший числовой палиндром

Задача: Разложение числа на простые множители

Комментариев нет.