„JavaScript“ programa, norint surasti skaičiaus faktorių naudojant rekursiją

Šiame pavyzdyje jūs išmoksite rašyti „JavaScript“ programą, kuri, naudodama rekursiją, suranda skaičiaus faktorialą.

Norėdami suprasti šį pavyzdį, turite žinoti šias „JavaScript“ programavimo temas:

  • „JavaScript“ rekursija
  • „JavaScript“, jei… kitas pareiškimas

Skaičio faktorialas yra visų skaičių nuo 1 iki šio skaičiaus sandauga . Pavyzdžiui,

koeficientas iš 5 yra lygus 1 * 2 * 3 * 4 * 5 = 120 .

Teigiamo skaičiaus n faktorą pateikia:

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

Neigiamų skaičių faktorialas neegzistuoja, o 0 faktorialas yra 1 .

Pavyzdys: raskite faktorių naudodami rekursiją

 // program to find the factorial of a number function factorial(x) ( // if number is 0 if (x == 0) ( return 1; ) // if number is positive else ( return x * factorial(x - 1); ) ) // take input from the user const num = prompt('Enter a positive number: '); // calling factorial() if num is positive if (num>= 0) ( const result = factorial(num); console.log(`The factorial of $(num) is $(result)`); ) else ( console.log('Enter a positive number.'); )

Rezultatas

 Įveskite teigiamą skaičių: 4 4 faktorialas yra 24

Pirmiau minėtoje programoje vartotojas raginamas įvesti numerį.

Kai vartotojas įveda neigiamą skaičių, pranešimas Įveskite teigiamą skaičių. yra pavaizduotas.

Kai vartotojas įveda teigiamą skaičių arba 0 , funkcija factorial(num)iškviečiama.

  • Jei vartotojas įves skaičių 0 , programa grąžins 1 .
  • Jei vartotojas įves skaičių, didesnį nei 0 , programa rekursyviai paskambins, sumažindama skaičių.
  • Šis procesas tęsiasi tol, kol skaičius tampa 1. Tada, kai skaičius pasiekia 0, grąžinama 1.

Čia

 faktorius (4) grąžina 4 * faktorius (3) faktorius (3) grąžina 4 * 3 * faktorius (2) faktorius (2) grąžina 4 * 3 * 2 * faktorius (1) faktorius (1) grąžina 4 * 3 * 2 * 1 * faktorius (0) faktorius (0) grąžina 4 * 3 * 2 * 1 * 1

Įdomios straipsniai...