JavaScript-program til at finde faktor for antal ved hjælp af rekursion

I dette eksempel lærer du at skrive et JavaScript-program, der finder et kendemærke for et nummer ved hjælp af rekursion.

For at forstå dette eksempel skal du have kendskab til følgende JavaScript-programmeringsemner:

  • JavaScript-rekursion
  • JavaScript, hvis … ellers Erklæring

Faktoriet for et nummer er et produkt af alle numrene fra 1 til dette nummer. For eksempel,

faktor af 5 er lig med 1 * 2 * 3 * 4 * 5 = 120 .

Faktoriet for et positivt tal n er givet ved:

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

Faktoren for negative tal findes ikke, og faktoren 0 er 1 .

Eksempel: Find faktor ved hjælp af rekursion

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

Produktion

 Indtast et positivt tal: 4 Faktoren på 4 er 24

I ovenstående program bliver brugeren bedt om at indtaste et nummer.

Når brugeren indtaster et negativt tal, en meddelelse Indtast et positivt tal. er vist.

Når brugeren indtaster et positivt tal eller 0 , factorial(num)kaldes funktionen .

  • Hvis brugeren indtaster tallet 0 , returnerer programmet 1 .
  • Hvis brugeren indtaster et tal større end 0 , kalder programmet sig rekursivt ved at formindske antallet.
  • Denne proces fortsætter, indtil tallet bliver 1. Når tallet derefter når 0, returneres 1.

Her,

 fabrik (4) returnerer 4 * fabrik (3) fabrik (3) returnerer 4 * 3 * fabrik (2) fabrik (2) returnerer 4 * 3 * 2 * fabrik (1) faktor (1) returnerer 4 * 3 * 2 * 1 * faktor (0) faktor (0) returnerer 4 * 3 * 2 * 1 * 1

Interessante artikler...