C Program for å finne et faktum av et tall ved hjelp av rekursjon

I dette eksemplet lærer du å finne faktoren til et ikke-negativt heltall som er angitt av brukeren ved hjelp av rekursjon.

For å forstå dette eksemplet, bør du ha kunnskap om følgende C-programmeringsemner:

  • C Funksjoner
  • C Brukerdefinerte funksjoner
  • C Rekursjon

Faktoren til et positivt tall n er gitt av:

factorial of n (n!) = 1 * 2 * 3 * 4 *… * n 

Faktoriet om et negativt tall eksisterer ikke. Og faktoren til 0er 1.

Du vil lære å finne et tallfaktor ved hjelp av rekursjon i dette eksemplet. Besøk denne siden for å lære hvordan du kan finne et talls faktura ved hjelp av en løkke.

Faktor av et tall ved bruk av rekursjon

#include long int multiplyNumbers(int n); int main() ( int n; printf("Enter a positive integer: "); scanf("%d",&n); printf("Factorial of %d = %ld", n, multiplyNumbers(n)); return 0; ) long int multiplyNumbers(int n) ( if (n>=1) return n*multiplyNumbers(n-1); else return 1; ) 

Produksjon

Angi et positivt heltall: 6 Faktor 6 = 720 

Anta at brukeren skrev inn 6.

Opprinnelig multiplyNumbers()kalles fra main()med 6 bestått som argument.

Deretter sendes 5 til multiplyNumbers()fra samme funksjon (rekursivt anrop). I hvert rekursivt anrop reduseres verdien av argument n med 1.

Når verdien av n er mindre enn 1, er det ingen rekursivt anrop, og faktoren returneres til slutt til main()funksjonen.

Interessante artikler...