Exempel för att hitta ett fakturor för ett icke-negativt heltal (angivet av användaren) med rekursion.
För att förstå detta exempel bör du ha kunskap om följande C ++ programmeringsämnen:
- C ++ - funktioner
- Typer av användardefinierade funktioner i C ++
- C ++ if, if… else och Nested if … else
- C ++ rekursion
Detta program tar ett positivt heltal från användaren och beräknar faktorn för det numret. Antag att användaren anger 6 sedan,
Faktorn är lika med 1 * 2 * 3 * 4 * 5 * 6 = 720
Du lär dig att hitta ett tal med hjälp av en rekursiv funktion i detta exempel.
Besök den här sidan för att lära dig hur du kan använda loopar för att beräkna faktoria.
Exempel: Beräkna faktor med hjälp av rekursion
#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; )
Produktion
Ange ett positivt heltal: 6 Faktor 6 = 720
Antag att i ovanstående program anger användaren ett nummer 6. Numret skickas till factorial()
funktionen.
I denna funktion multipliceras 6 med faktorn (6 - 1 = 5). För detta skickas siffran 5 igen till factorial()
funktionen.
På samma sätt i nästa iteration multipliceras 5 med faktorn (5 - 1 = 4). Och 4 skickas till factorial()
funktionen.
Detta fortsätter tills värdet når 1 och funktionen returnerar 1.
Nu returnerar varje funktion värdet tillbaka för att beräkna 1 * 2 * 3 * 4 * 5 * 6 = 720, som returneras till main()
funktionen.