Program C za iskanje faktorja števila z uporabo rekurzije

V tem primeru se boste naučili poiskati faktorijel negativnega celega števila, ki ga je uporabnik vnesel z uporabo rekurzije.

Če želite razumeti ta primer, morate poznati naslednje teme programiranja C:

  • C Funkcije
  • C Uporabniško določene funkcije
  • C Rekurzija

Faktorial pozitivnega števila n je podan z:

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

Faktor negativnega števila ne obstaja. In faktorijel 0je 1.

V tem primeru se boste naučili iskati faktorje številke z uporabo rekurzije. Obiščite to stran, če želite izvedeti, kako lahko z zanko poiščete faktorje številke.

Faktorij števila z uporabo rekurzije

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

Izhod

Vnesite pozitivno celo število: 6 Factorial of 6 = 720 

Recimo, da je uporabnik vnesel 6.

Sprva multiplyNumbers()je bil poklican iz main()s 6, ki je bil poslan kot argument.

Nato se multiplyNumbers()iz iste funkcije (rekurzivni klic) prenese na 5 . V vsakem rekurzivnem klicu se vrednost argumenta n zmanjša za 1.

Ko je vrednost n manjša od 1, ni rekurzivnega klica in faktorijel se na koncu vrne v main()funkcijo.

Zanimive Članki...