I dette eksemplet lærer du å skrive et program i JavaScript for å finne et Armstrong-tall mellom to heltallverdier.
For å forstå dette eksemplet, bør du ha kunnskap om følgende JavaScript-programmeringsemner:
- JavaScript for loop
Et positivt heltall kalles et Armstrong-tall (av rekkefølge n ) hvis:
abcd … = a n + b n + c n + d n + …
Når det gjelder et Armstrong-antall på 3 sifre, er summen av kuber av hvert siffer lik 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
Før du prøver dette programmet, kan du gå til JavaScript-programmet for å sjekke Armstrong Number.
Eksempel: Armstrong teller mellom 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); ) )
Produksjon
Angi en positiv lavtallverdi: 8 Angi en positiv høytallverdi: 500 Armstrong-tall: 8 9153 370 371 407
I programmet ovenfor blir brukeren bedt om å angi to heltall. Det ene er det lavere intervallet heltall, og det andre er det høyere heltallverdien.
Den parseInt()
konverterer den numeriske strengverdien til et heltall.
Den for
koplingssløyfe anvendes til å skifte mellom de to tallene gitt av brukeren.
Den toString()
metoden er brukt for å konvertere tallet til en streng. Og length
egenskapen brukes til å finne lengden på en streng. Derfor, i dette tilfellet, length
gir de totale sifrene i tallet.
let numberOfDigits = i.toString().length;
I den første for
loop-iterasjonen ( i = 8 ),
- Det lavere tallet som er angitt av brukeren, lagres i en midlertidig variabel
temp
. - En
while
sløyfe brukes til å gjenta nummeret.- Den modulus operator
%
benyttes for å oppnå hvert siffer nummer. Når et tall er delt på 10 , er resten det siste sifferet. I den første iterasjonen,8 % 10
gir 8 . - Resten multipliseres med antall sifre i tallet (her 1 ) og summen blir beregnet.
- Sifferet er delt på 10 for å fjerne det siste sifferet, dvs.
8 / 10
gir 0.
- Den modulus operator
- Til slutt sammenlignes summen med antallet som er angitt av brukeren. Hvis summen og antallet er like, vises Armstrong-tallet.
Sløyfen fortsetter for alle tallene som er i mellom nedre og øvre grenser gitt av brukeren. I eksemplet ovenfor blir sløyfen utført fra 8 til 500 .