Program JavaScript k vyhledání faktoriálu čísla pomocí rekurze

V tomto příkladu se naučíte psát program JavaScript, který najde faktoriál čísla pomocí rekurze.

Abyste pochopili tento příklad, měli byste znát následující programovací témata JavaScriptu:

  • Rekurze JavaScript
  • Prohlášení JavaScript, pokud … else

Faktoriál čísla je součinem všech čísel od 1 do tohoto čísla. Například,

faktoriál 5 se rovná 1 * 2 * 3 * 4 * 5 = 120 .

Faktoriál kladného čísla n je dán vztahem:

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

Faktoriál záporných čísel neexistuje a faktoriál 0 je 1 .

Příklad: Najděte faktoriál pomocí rekurze

 // 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.'); )

Výstup

 Zadejte kladné číslo: 4 Faktoriál 4 je 24

Ve výše uvedeném programu je uživatel vyzván k zadání čísla.

Když uživatel zadá záporné číslo, zobrazí se zpráva Zadejte kladné číslo. je ukázáno.

Když uživatel zadá kladné číslo nebo 0 , funkce factorial(num)se zavolá.

  • Pokud uživatel zadá číslo 0 , program vrátí 1 .
  • Pokud uživatel zadá číslo větší než 0 , program se rekurzivně zavolá snížením čísla.
  • Tento proces pokračuje, dokud se číslo nestane 1. Potom, když počet dosáhne 0, je vrácena 1.

Tady,

 faktoriál (4) vrátí 4 * faktoriál (3) faktoriál (3) vrátí 4 * 3 * faktoriál (2) faktoriál (2) vrátí 4 * 3 * 2 * faktoriál (1) faktoriál (1) vrátí 4 * 3 * 2 * 1 * faktoriál (0) faktoriál (0) vrací 4 * 3 * 2 * 1 * 1

Zajímavé články...