Program C ++ pentru a calcula factorialul unui număr folosind recursivitate

Exemplu pentru a găsi factorialul unui număr întreg non-negativ (introdus de utilizator) folosind recursivitate.

Pentru a înțelege acest exemplu, ar trebui să aveți cunoștințele următoarelor subiecte de programare C ++:

  • Funcții C ++
  • Tipuri de funcții definite de utilizator în C ++
  • C ++ dacă, dacă … altfel și cuibărit dacă … altfel
  • C ++ Recursivitate

Acest program ia un număr întreg pozitiv de la utilizator și calculează factorialul acelui număr. Să presupunem că utilizatorul introduce 6 atunci,

 Factorialul va fi egal cu 1 * 2 * 3 * 4 * 5 * 6 = 720 

Veți învăța să găsiți factorialul unui număr folosind o funcție recursivă în acest exemplu.

Accesați această pagină pentru a afla cum puteți utiliza bucle pentru a calcula factorial.

Exemplu: Calculați factorii utilizând recursivitatea

 #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; ) 

Ieșire

 Introduceți un număr întreg pozitiv: 6 Factorial de 6 = 720

În programul de mai sus, să presupunem că utilizatorul introduce un număr 6. Numărul este trecut la factorial()funcție.

În această funcție, 6 se înmulțește cu factorialul de (6 - 1 = 5). Pentru aceasta, numărul 5 este trecut din nou la factorial()funcție.

La fel în următoarea iterație, 5 se înmulțește cu factorialul de (5 - 1 = 4). Și, 4 este trecut la factorial()funcție.

Aceasta continuă până când valoarea ajunge la 1 și funcția returnează 1.

Acum, fiecare funcție returnează valoarea înapoi pentru a calcula 1 * 2 * 3 * 4 * 5 * 6 = 720, care este returnată main()funcției.

Articole interesante...