Úvod do věcného programu v C ++
Všichni jsme studovali faktoriál v matematice, je snadné vypočítat. Ale je složité, když musíme vypočítat faktoriál pro velké množství. V tomto článku se podíváme, jak vypočítat faktoriál v jazyce C ++. Factorial je označen vykřičníkem tj.! podepsat. Faktor pro záporné číslo neexistuje. Faktoriál můžeme vypočítat pouze pro kladné číslo. Níže jsou uvedeny příklady vzorků, které ukazují výpočet faktoriálu pro čísla 0 až 10.
Poznámka: Faktor 0 je vždy 1.
- Factorial 0! = 1
- Factorial of 1! = 1
- Faktor 2 = 2 * 1 = 2
- Factorial of 3! = 3 * 2 * 1 = 6
- Factorial of 4! = 4 * 3 * 2 * 1 = 24
- Factorial of 5! = 5 * 4 * 3 * 2 * 1 = 120
- Factorial of 6! = 6 * 5 * 4 * 3 * 2 * 1 = 720
- Factorial of 7! = 7 * 6 * 5 * 4 * 3 * 2 * 1 = 5040
- Factorial of 8! = 8 * 7 * 6 * 5 * 4 * 3 * 2 * 1 = 40320
- Factorial of 9! = 9 * 8 * 7 * 6 * 5 * 4 * 3 * 2 * 1 = 362880
- Factorial of 10! = 10 * 9 * 8 * 7 * 6 * 5 * 4 * 3 * 2 * 1 = 3628800
Jak vypočítat Factorial v jazyce C ++ pomocí různých metod?
Zde budeme diskutovat o tom, jak vypočítat faktoriál v jazyce C ++ pomocí různých metod, jako je příkaz if-else, pro smyčku, metodu rekurze a funkci pomocí příkladů:
Příklad 1: Faktorový program v jazyce C ++ pomocí příkazu if-else
Kód:
#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;
)
Vysvětlení výše uvedeného kódu: Ve výše uvedeném příkladu jsme inicializovali tři proměnné, tj. Num, I a fact_num. Zde jsme pro výpočet faktoriálu použili příkaz if-else. Pokud jinak příkazem je zkontrolovat stav před výpočtem faktoriálu pro zadané číslo. Pokud je číslo zadané uživatelem záporné, vyvolá chybu, která ukazuje chybu! Zadali jste záporné číslo a faktor pro záporná čísla neexistuje. Pokud je zadané číslo kladné, převede řízení do jiného příkazu, kde je uvedena podmínka pro výpočet faktoriálu.
Výstup:
Zde je číslo zadané uživatelem záporné, takže zobrazuje chybovou zprávu.
Zde je číslo zadané uživatelem kladné, takže dává výstup pro faktoriál 5, tj. 120
Příklad 2: Faktorový program v jazyce C ++ pomocí smyčky For
Kód:
#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;
)
Vysvětlení výše uvedeného programu: Zde jsme pro výpočet faktoriálu použili metodu smyčky. V smyčce jsme zmínili některé podmínky pro výpočet faktoriálu. Zde máme inicializovanou proměnnou I s 1, což je číslo, které bude brát pro i je 1. Poté jsme zmínili podmínku, že proměnná I by měla být stejná a menší než číslo, které zadá uživatel. Poté jsme zmínili podmínku přírůstku pro zvýšení hodnoty proměnné I pokaždé v iteračním procesu.
Výstup:
Zde jsme vypočítali faktoriál pro 10.
Příklad 3: Faktorový program v jazyce C ++ pomocí metody rekurze
Kód:
#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));
)
Vysvětlení výše uvedeného programu: Zde jsme pro výpočet faktoriálu použili metodu rekurze. Metoda rekurze je velmi podobná metodě funkce. Metoda rekurze se většinou používá k snadnému vyřešení problému. Zde jsme deklarovali faktoriál jako funkci a předali num jako parametr. Ve faktorové metodě jsme použili příkaz if-else ke kontrole, zda je zadané číslo kladné nebo záporné, jak jsme použili v prvním příkladu. Pak jsme nazvali faktoriální metodu, kde se provádějí příkazy pro faktoriální.
Výstup:
Příklad 4: Faktorový program v jazyce C ++ pomocí funkce
Kód:
#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;
)
Vysvětlení výše uvedeného programu: Zde jsme pro výpočet faktoriálu pro číslo použili metodu funkce. Nejprve vytvoříme faktoriální funkci a předáme n jako parametr k uložení hodnoty čísla. V hlavní metodě jsme deklarovali vstup, který uživateli umožňuje zadat hodnotu a výstup pro tisk faktoriálu. Poté nazýváme funkční faktoriál, kde je definována logika faktoriálu.
Výstup:
Závěr
V tomto článku jsme viděli programy, jak vypočítat faktoriál čísla v jazyce C ++ pomocí podmíněných příkazů pro smyčku, metodu rekurze a funkce spolu s příklady. Doufám, že tento článek vám pomůže pochopit fungování faktoriálu v jazyce C ++.
Doporučené články
Toto je průvodce Věcným programem v C ++. Zde diskutujeme, jak vypočítat faktoriál v c ++ různými metodami. Další informace naleznete také v dalších souvisejících článcích.
- Factorial v PHP
- Factorial in C
- Factorial v Pythonu
- Nejlepší kompilátor C ++
- Věcný program v JavaScriptu