C ++ programa skaičiaus faktoriniui apskaičiuoti naudojant rekursiją

Pavyzdys, kaip rasti negatyvaus sveiko skaičiaus, kurį įvedė vartotojas, faktorialą, naudojant rekursiją.

Norėdami suprasti šį pavyzdį, turėtumėte žinoti šias C ++ programavimo temas:

  • C ++ funkcijos
  • Vartotojo nustatytų funkcijų tipai C ++
  • C ++, jei, jei… dar kitaip, ir įdėta, jei … kita
  • C ++ rekursija

Ši programa paima iš vartotojo teigiamą sveikąjį skaičių ir apskaičiuoja to skaičiaus faktorialą. Tarkime, kad vartotojas įveda 6,

 Faktorinis koeficientas bus lygus 1 * 2 * 3 * 4 * 5 * 6 = 720 

Šiame pavyzdyje išmoksite rasti skaičiaus faktorialą naudodami rekursinę funkciją.

Apsilankykite šiame puslapyje, kad sužinotumėte, kaip galite naudoti kilpas apskaičiuodami faktorialą.

Pavyzdys: apskaičiuokite faktorių naudodami rekursiją

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

Rezultatas

 Įveskite teigiamą sveikąjį skaičių: 6 koeficientas 6 = 720

Tarkime, kad pirmiau pateiktoje programoje vartotojas įveda skaičių 6. Skaičius perduodamas factorial()funkcijai.

Šioje funkcijoje 6 padauginamas iš koeficiento (6 - 1 = 5). Tam skaičius 5 vėl perduodamas factorial()funkcijai.

Panašiai sekančioje iteracijoje 5 padauginamas iš koeficiento (5 - 1 = 4). 4 funkcijai perduodama factorial().

Tai tęsiasi tol, kol vertė pasiekia 1, o funkcija grąžina 1.

Dabar kiekviena funkcija grąžina reikšmę atgal apskaičiuoti 1 * 2 * 3 * 4 * 5 * 6 = 720, kuri grąžinama į main()funkciją.

Įdomios straipsniai...