Példa egy nem negatív (a felhasználó által beírt) egész szám faktoriális értékének meghatározására rekurzióval.
A példa megértéséhez ismernie kell a következő C ++ programozási témákat:
- C ++ függvények
- A felhasználó által definiált függvények típusai a C ++ nyelven
- C ++ ha, ha… más, és beágyazott, ha … más
- C ++ rekurzió
Ez a program pozitív egész számot vesz fel a felhasználótól, és kiszámítja ennek a számnak a tényleges számát. Tegyük fel, hogy a felhasználó megad 6-at,
Faktoriális értéke 1 * 2 * 3 * 4 * 5 * 6 = 720 lesz
Ebben a példában megtanulja megtalálni a szám faktoriálját egy rekurzív függvény segítségével.
Erről az oldalról megtudhatja, hogyan használhatja a ciklusokat a faktoriális számításához.
Példa: Számítsa ki a faktort a rekurzió használatával
#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; )
Kimenet
Adjon meg pozitív egész számot: 6 6 = 720 tényező
Tegyük fel, hogy a fenti programban a felhasználó beír egy 6-os számot. A számot átadjuk a factorial()
függvénynek.
Ebben a függvényben a 6-ot megszorozzuk a (6 - 1 = 5) faktorral. Ehhez az 5-ös számot ismét átadják a factorial()
függvénynek.
Ugyanígy a következő iterációban az 5-et megszorozzuk az (5 - 1 = 4) tényezőjével. És 4 átkerül a factorial()
függvényhez.
Ez addig folytatódik, amíg az érték el nem éri az 1 értéket, és a függvény vissza nem tér az 1 értékre.
Most minden függvény visszaadja az értéket az 1 * 2 * 3 * 4 * 5 * 6 = 720 kiszámításához, amely visszatér a main()
függvényhez.