Как можно написать программу на языке Python, которая показывает значение факториала натурального числа

  • 14
Как можно написать программу на языке Python, которая показывает значение факториала натурального числа n?
Морской_Цветок
33
Конечно, я могу помочь с этой задачей. Вот пример программы на языке Python, которая вычисляет факториал заданного натурального числа:

python
def factorial(n):
if n == 0:
return 1
else:
return n * factorial(n-1)

# Запрос ввода числа у пользователя
num = int(input("Введите натуральное число: "))

# Проверка на натуральное число (положительное число, больше 0)
if num < 0:
print("Ошибка! Введите положительное число.")
else:
result = factorial(num)
print("Факториал числа", num, "равен", result)


Давайте поясним, как работает эта программа:

1. Мы объявляем функцию `factorial`, которая принимает один аргумент `n`.
2. Внутри функции проверяем базовый случай: если `n` равно 0, то возвращаем 1 (факториал 0 равен 1).
3. Если `n` не равно 0, то возвращаем произведение числа `n` на факториал предыдущего числа `(n-1)`. При этом мы рекурсивно вызываем функцию `factorial`, чтобы вычислить факториал предыдущего числа.
4. Затем мы запрашиваем у пользователя ввести натуральное число с помощью функции `input`.
5. Проверяем, чтобы введенное число было положительным (`num > 0`), иначе выводим сообщение об ошибке.
6. Если число положительное, то вызываем функцию `factorial` с введенным числом и сохраняем результат в переменной `result`.
7. Наконец, выводим значение факториала на экран.

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