Написать программу которая вычисляет факториал

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

Решение задачи

  1. Записываем введенное пользователем число в отдельную переменную.
  2. Передаем это число в качестве аргумента в рекурсивную функцию, которая вычисляет факториал.
  3. Определяем внутри этой функции базовое условие рекурсии: в случае, когда аргумент функции меньше либо равен 1 , рекурсивная функция прекращает свою работу и возвращает в качестве результата 1 .
  4. В противном случае в качестве результата возвращается число, умноженное на рекурсивную функцию, аргумент которой уменьшен на единицу. И все повторяется заново.
  5. После того, как рекурсивная функция прекратила свою работу, на экран выводится результат.
  6. Конец.

Исходный код

Ниже дан исходный код, который осуществляет нахождение факториала числа при помощи рекурсии. Результаты работы программы также даны ниже.

def factorial(n): if (n

Объяснение работы программы

  1. Пользователь вводит число и оно записывается в переменную n .
  2. Передаем число n в качестве аргумента в рекурсивную функцию, которая вычисляет факториал этого числа.
  3. Задаем базу рекурсии при помощи условия n
  4. В противном случае функция возвращает n * factorial(n-1) и все повторяется заново.
  5. После того, как функция завершит свою работу, результат выводится на экран.

Результаты работы программы

Пример 1: Введите число:5 Факториал числа равен: 120 Пример 2: Введите число:9 Факториал числа равен: 362880

Источник: pythonist.ru

«Написание простой программы для вычисления факториала (Питон 2)»

Вычисление факториала числа

Вычислить факториал числа, которое ввел пользователь.

Факториал числа представляет собой произведение всех натуральных чисел от 1 до этого числа включительно. Например, факториал числа 7 вычисляется так:

1 * 2 * 3 * 4 * 5 * 6 * 7

Факториал числа обозначается как само число, после которого следует восклицательный знак. Таким образом:

Читайте также:
Какие космические корабли принимали участие в программе эпас

7! = 1 * 2 * 3 * 4 * 5 * 6 * 7 = 5040

С увеличением числа его факториал быстро возрастает. Так если 3! = 6, то уже 10! = 3628800. Поэтому в языке программирования Паскаль не следует вводить большое число, иначе будет возникать ошибка или будет получено неверное значение.

Переменной factorial сначала присваивается значение 1, так как 0! = 1 и 1! = 1.

Если пользователь ввел число больше единицы, то выполняется цикл, в теле которого на каждой итерации значение переменной factorial умножается на следующее натуральное число (значение переменной i ).

Программа на языке Паскаль:

var factorial: longint; n, i: byte; begin write(‘n = ‘); readln(n); factorial := 1; for i := 2 to n do factorial := factorial * i; writeln(‘n! = ‘, factorial); end.

Примеры выполнения программы:

Вычислить факториал введенного числа на python


n = 6 n! = 720
n = 9 n! = 362880

Источник: pas1.ru

Вычислить факториал на Java

Написать метод, который бы вычислял факториал натурального числа. Напоминаем: факториал числа n — это произведение всех натуральных чисел от 1 до n включительно.

Решение:

public class Test <
static int calculateFactorial ( int n ) <
int result = 1 ;
for ( int i = 1 ; i < = n ; i ++ ) <
result = result* i ;
return result ;
public static void main ( String [ ] args ) <
System . out . println ( calculateFactorial ( 4 ) ) ;

Если Вы запустите данный код на своем компьютере, в консоли Вы увидите:

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

1.Почему в консоли мы увидели 24? Потому что факториал числа 4 — это 1*2*3*4. Перемножив данные числа, мы получим 24.

2. Мы знаем, что факториал числа n — это произведение всех натуральных чисел от 1 до n. Как видите, первое число всегда 1. Поэтому мы создали переменную

int result = 1 ;

Далее мы использовали цикл for, чтоб перемножать числа от 1 до n:

for ( int i = 1 ; i < = n ; i ++ ) <
result = result* i ;

Читайте также:
Что такое программа java 8 update

Таким образом, мы написали метод calculateFactorial(), который вычисляет факториал числа n:

static int calculateFactorial ( int n ) <
int result = 1 ;
for ( int i = 1 ; i < = n ; i ++ ) <
result = result* i ;
return result ;

И далее, чтоб вывести в консоль результат работы calculateFactorial(4), мы написали следующее:

public static void main ( String [ ] args ) <
System . out . println ( calculateFactorial ( 4 ) ) ;

Вот и вся задача.

Есть возможность записаться на наши курсы по Java. Детальнее — у нас на сайте.

  • ← Java 9 JShell (Project REPL) Часть 2
  • Java 8 New Date/ Time API — Введение →

Источник: vertex-academy.com

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru