Program C ++ pro výpočet faktoriálu čísla pomocí rekurze

Příklad k nalezení faktoriálu nezáporného celého čísla (zadaného uživatelem) pomocí rekurze.

Abychom porozuměli tomuto příkladu, měli byste znát následující programovací témata C ++:

  • Funkce C ++
  • Typy uživatelsky definovaných funkcí v C ++
  • C ++ if, if … else a Nested if … else
  • C ++ rekurze

Tento program přebírá od uživatele kladné celé číslo a vypočítá faktoriál tohoto čísla. Předpokládejme, že uživatel zadá 6,

 Faktoriál se bude rovnat 1 * 2 * 3 * 4 * 5 * 6 = 720 

Naučíte se najít faktoriál čísla pomocí rekurzivní funkce v tomto příkladu.

Na této stránce se dozvíte, jak lze pomocí smyček vypočítat faktoriál.

Příklad: Vypočítejte faktoriál pomocí rekurze

 #include using namespace std; int factorial(int n); int main() ( int n; cout <> n; cout << "Factorial of " << n << " = " < 1) return n * factorial(n - 1); else return 1; ) 

Výstup

 Zadejte kladné celé číslo: 6 Factorial of 6 = 720

Ve výše uvedeném programu předpokládejme, že uživatel zadá číslo 6. Číslo je předáno factorial()funkci.

V této funkci je 6 vynásobeno faktoriálem (6 - 1 = 5). Za tímto účelem je číslo 5 opět předáno factorial()funkci.

Podobně v další iteraci se 5 vynásobí faktoriálem (5 - 1 = 4). A 4 je předán factorial()funkci.

To pokračuje, dokud hodnota nedosáhne 1 a funkce vrátí 1.

Nyní každá funkce vrací hodnotu zpět k výpočtu 1 * 2 * 3 * 4 * 5 * 6 = 720, která se vrací do main()funkce.

Zajímavé články...