Введение в факториальную программу на C ++

Мы все изучали факториал в математике, это легко вычислить. Но это становится сложным, когда мы должны вычислить факториал для большого числа. В этой статье мы увидим, как рассчитать факториал на языке C ++. Факториал обозначается восклицательным знаком т.е. подписать. Факториала для отрицательного числа не существует. Мы можем рассчитать факториал только для положительного числа. Ниже приведены примеры примеров, которые показывают расчет факториала для чисел от 0 до 10.
Примечание: факториал 0 всегда равен 1.

  • Факториал 0! = 1
  • Факториал 1! = 1
  • Факториал 2 = 2 * 1 = 2
  • Факториал 3! = 3 * 2 * 1 = 6
  • Факториал 4! = 4 * 3 * 2 * 1 = 24
  • Факториал 5! = 5 * 4 * 3 * 2 * 1 = 120
  • Факториал 6! = 6 * 5 * 4 * 3 * 2 * 1 = 720
  • Факториал 7! = 7 * 6 * 5 * 4 * 3 * 2 * 1 = 5040
  • Факториал 8! = 8 * 7 * 6 * 5 * 4 * 3 * 2 * 1 = 40320
  • Факториал 9! = 9 * 8 * 7 * 6 * 5 * 4 * 3 * 2 * 1 = 362880
  • Факториал 10! = 10 * 9 * 8 * 7 * 6 * 5 * 4 * 3 * 2 * 1 = 3628800

Как рассчитать факториал в языке C ++, используя различные методы?

Здесь мы собираемся обсудить, как вычислить факториал в языке C ++, используя различные методы, такие как оператор if-else, для цикла, метода рекурсии и функции с помощью примеров:

Пример 1: Факториальная программа на языке C ++ с использованием оператора if-else

Код:

#include
using namespace std;
int main()
(
int num, i, fact_num = 1;
cout << "Enter the positive number to find the factorial: ";
cin >> num;
// if entered number is negative show the error
if (num< 0)
cout << "Error! You have entered negative number and Factorial for negative number does not exist.";
else
(
for(i = 1; i <= num; ++i)
(
fact_num*= i; // factorial = factorial*i;
)
cout << "Factorial of the entered number is " << fact_num;
)
return 0;
)

Объяснение приведенного выше кода: В приведенном выше примере мы инициализировали три переменные, т.е. num, I и fact_num. Здесь для вычисления факториала мы использовали оператор if-else. Если еще оператор должен проверить условие перед вычислением факториала для введенного числа. Если число, введенное пользователем, отрицательно, выдается ошибка, которая показывает ошибку! Вы ввели отрицательное число, а Factorial для отрицательных чисел не существует. Если введенное число положительно, if передаст управление оператору else, в котором указано условие для расчета факториала.

Выход:

Здесь число, введенное пользователем, является отрицательным, следовательно, оно показывает сообщение об ошибке.

Здесь число, введенное пользователем, является положительным, следовательно, оно дает вывод для факториала 5, т.е.

Пример 2: Факториальная программа на языке C ++ с использованием цикла For

Код:

#include
using namespace std;
int main()
(
int i, fact_num = 1, num;
cout << "Enter random number to find the factorial: ";
cin >> num;
for(i = 1; i <= num; i++)
(
fact_num = fact_num * i;
)
cout << "Factorial of the given number is " << fact_num;
return 0;
)

Объяснение вышеприведенной программы: Здесь для вычисления факториала мы использовали метод цикла. В цикле for мы упомянули некоторые условия для вычисления факториала. Здесь у нас есть инициализированная переменная I с 1, то есть число, которое потребуется для i, равным 1. Затем мы упомянули условие, что переменная I должна быть равна и меньше, чем число, которое вводит пользователь. Затем мы упомянули условие приращения для увеличения значения переменной I каждый раз в процессе итерации.

Выход:

Здесь мы вычислили факториал для 10.

Пример 3: Факториальная программа на языке C ++ с использованием метода рекурсии

Код:

#include
using namespace std;
int factorial(int num);
int main()
(
int num, fact_num;
cout << "Enter random number to find the factorial:";
cin >> num;
if(num < 0)
cout << "Negative integer factorial is not described." << endl;
else
(
fact_num = factorial(num);
cout << "Factorial of the given number is " << fact_num;
)
return 0;
)
int factorial(int num)
(
if (num == 0)
return 1;
else
return(num * factorial(num - 1));
)

Объяснение вышеуказанной программы: Здесь мы использовали метод рекурсии для вычисления факториала. Метод рекурсии очень похож на метод функций. Метод рекурсии в основном используется для легкого решения проблемы. Здесь мы объявили факториал как функцию и передаем num в качестве параметра. В факториальном методе мы использовали оператор if-else, чтобы проверить, является ли введенное число положительным или нет, как мы использовали в первом примере. Затем мы вызвали метод факториала, где выполняются операторы для факториала.

Выход:

Пример 4: Факториальная программа на языке C ++ с использованием функции

Код:

#include
using namespace std;
int factorial(int n);
int main()
(
int num, fact_num = 1;
cout << "Enter random number to find the factorial: ";
cin >> num;
cout <<"Factorial of the given number is "<< factorial(num);
return 0;
)
int factorial(int n)
(
int count_num, result = 1;
for (count_num = 1; count_num <= n; count_num ++)
result = result * count_num;
return result;
)

Объяснение вышеприведенной программы: здесь, чтобы вычислить факториал для числа, мы использовали метод функции. Сначала мы создаем функцию факториала и передаем n в качестве параметра для хранения числового значения. В методе main мы объявили input, чтобы пользователь мог ввести значение и вывести на печать факториал. После этого мы вызываем функцию факториала, где определяется логика для факториала.

Выход:

Вывод

В этой статье мы увидели программы, как вычислить факториал числа в языке C ++, используя условные операторы, цикл, метод рекурсии и функции вместе с примерами. Я надеюсь, что эта статья поможет вам понять работу факториала в языке C ++.

Рекомендуемые статьи

Это руководство по факториальной программе на C ++. Здесь мы обсудим, как вычислить факториал в C ++ различными способами. Вы также можете просмотреть другие наши статьи, чтобы узнать больше-

  1. Факториал в PHP
  2. Факториал в С
  3. Факториал в Python
  4. Лучший компилятор C ++
  5. Факториал Программа в JavaScript