JavaScript-program til at finde Armstrong-nummer i et interval

I dette eksempel lærer du at skrive et program i JavaScript for at finde et Armstrong-tal mellem to heltalværdier.

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

  • JavaScript til loop

Et positivt heltal kaldes et Armstrong-tal (af rækkefølge n ), hvis:

abcd… = a n + b n + c n + d n +…

I tilfælde af et Armstrong-antal på 3 cifre er summen af ​​terninger af hvert ciffer lig med selve tallet. For eksempel er 153 et Armstrong-nummer, fordi:

 153 = 1 * 1 * 1 + 5 * 5 * 5 + 3 * 3 * 3

Tilsvarende er 1634 et Armstrong-nummer, fordi:

 1634 = 1 * 1 * 1 * 1 + 6 * 6 * 6 * 6 * + 3 * 3 * 3 * 3 + 4 * 4 * 4 * 4

Inden du prøver dette program, skal du besøge JavaScript-programmet for at kontrollere Armstrong Number.

Eksempel: Armstrong tal mellem to intervaller

 // program to find Armstrong number between intervals // take an input const lowNumber = parseInt(prompt('Enter a positive low integer value: ')); const highNumber = parseInt(prompt('Enter a positive high integer value: ')); console.log ('Armstrong Numbers:'); // looping through lowNumber to highNumber for (let i = lowNumber; i 0) ( let remainder = temp % 10; sum += remainder ** numberOfDigits; // removing last digit from the number temp = parseInt(temp / 10); // convert float into integer ) if (sum == i) ( console.log(i); ) )

Produktion

 Indtast en positiv lav heltal værdi: 8 Indtast en positiv høj hel værdi: 500 Armstrong Numbers: 8 9153 370 371 407

I ovenstående program bliver brugeren bedt om at indtaste to heltal. Den ene er det lavere interval heltal, og en anden er den højere heltal værdi.

Den parseInt()konverterer den numeriske strengværdi til et heltal.

Den forløkke anvendes til at sløjfe gennem de to tal leveret af brugeren.

Den toString()metode bruges til at konvertere nummeret til en streng. Og lengthejendommen bruges til at finde længden af ​​en streng. Derfor lengthangiver i dette tilfælde antallet af cifre i antallet.

 let numberOfDigits = i.toString().length;

I den første forloop-iteration ( i = 8 ),

  1. Det lavere nummer, der er indtastet af brugeren, gemmes i en midlertidig variabel temp.
  2. En whilesløjfe bruges til at gentage nummeret.
    1. Det modulus operatør % anvendes til at opnå hver cifre. Når et tal divideres med 10 , er resten det sidste ciffer. I den første iteration 8 % 10giver 8 .
    2. Resten ganges med antallet af cifre i dette tal (her 1 ), og summen beregnes.
    3. Cifret divideres med 10 for at fjerne det sidste ciffer, dvs. 8 / 10giver 0.
  3. Endelig sammenlignes summen med det antal, der er indtastet af brugeren. Hvis summen og antallet er ens, vises Armstrong-nummeret.

Sløjfen fortsætter for alle de numre, der er i mellem den nedre og den øvre grænse, der leveres af brugeren. I ovenstående eksempel udføres sløjfen fra 8 til 500 .

Interessante artikler...