C ++ programma om factoriële van een getal te berekenen met behulp van recursie

Voorbeeld om faculteit van een niet-negatief geheel getal (ingevoerd door de gebruiker) te vinden met behulp van recursie.

Om dit voorbeeld te begrijpen, moet u kennis hebben van de volgende C ++ programmeeronderwerpen:

  • C ++ Functies
  • Typen door de gebruiker gedefinieerde functies in C ++
  • C ++ if, if… else en genest if… else
  • C ++ recursie

Dit programma neemt een positief geheel getal van de gebruiker en berekent de faculteit van dat getal. Stel dat de gebruiker 6 invoert,

 Factorial is gelijk aan 1 * 2 * 3 * 4 * 5 * 6 = 720 

In dit voorbeeld leer je de faculteit van een getal te vinden met behulp van een recursieve functie.

Bezoek deze pagina om te leren hoe u lussen kunt gebruiken om faculteiten te berekenen.

Voorbeeld: Factorial berekenen met behulp van recursie

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

Uitvoer

 Voer een positief geheel getal in: 6 Factorieel van 6 = 720

Stel dat de gebruiker in het bovenstaande programma een nummer 6 invoert. Het nummer wordt doorgegeven aan de factorial()functie.

In deze functie wordt 6 vermenigvuldigd met de faculteit van (6 - 1 = 5). Hiervoor wordt het cijfer 5 weer doorgegeven aan de factorial()functie.

Evenzo wordt in de volgende iteratie 5 vermenigvuldigd met de faculteit van (5 - 1 = 4). En 4 wordt doorgegeven aan de factorial()functie.

Dit gaat door totdat de waarde 1 bereikt en de functie 1 retourneert.

Nu retourneert elke functie de waarde terug om 1 * 2 * 3 * 4 * 5 * 6 = 720 te berekenen, die naar de main()functie wordt geretourneerd .

Interessante artikelen...