Въведение във факторната програма в C ++

Всички сме изучавали фабриката по математика, лесно е да се изчисли. Но става сложно, когато трябва да изчислим фабриката за голям брой. В тази статия ще видим как да изчислим фактора на езика C ++. Factorial се обозначава с удивителен знак т.е. знак. Фактор за отрицателно число не съществува. Можем да изчислим факториал само за положително число. По-долу са дадени примерни примери, които показват изчислението на фактория за числа 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

Как да се изчисли Factorial в езика 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. Ако друго заявление е да проверите състоянието, преди да изчислите коефициента за въведеното число. Ако въведеният от потребителя номер е отрицателен, той хвърля грешка, която показва Грешка! Въвели сте отрицателно число и Фактор за отрицателни числа не съществува. Ако въведеното число е положително, ще прехвърли контрола към оператор else, където е посочено условието за изчисляване на факториал.

изход:

Тук числото, въведено от потребител, е отрицателно, следователно показва съобщението за грешка.

Тук числото, въведено от потребителя, е положително, следователно дава изход за фактор 5, т.е. 120

Пример 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;
)

Обяснение на горната програма: Тук за изчисляване на фактория сме използвали метод loop. Във връзка с цикъла споменахме някои условия за изчисляване на фактологията. Тук имаме инициализирана променлива 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 като параметър, за да съхраним числовата стойност. В основния метод сме декларирали вход, за да позволим на потребителя да въведе стойност и изход за отпечатване на фабриката. След това наричаме функционален фактор, където е дефинирана логиката за фактория.

изход:

заключение

В тази статия видяхме програми за това как да изчислим коефициента на число в езика на C ++, използвайки условни оператори, за цикъл, метод на рекурсия и функции заедно с примери. Надявам се тази статия да ви помогне да разберете как работи фабриката на езика C ++.

Препоръчителни статии

Това е ръководство за Факторната програма в C ++. Тук обсъждаме как да изчислим факториал в c ++ в различни методи. Можете също да разгледате и другите ни свързани статии, за да научите повече-

  1. Фактор на PHP
  2. Факториал в С
  3. Факториал в Python
  4. Най-добрият компилатор на C ++
  5. Факторна програма в JavaScript