V tomto príklade sa naučíte písať program v JavaScripte, aby ste našli Armstrongovo číslo medzi dvoma celočíselnými hodnotami.
Aby ste pochopili tento príklad, mali by ste mať znalosti nasledujúcich tém programovania v jazyku JavaScript:
- JavaScript pre slučku
Kladné celé číslo sa nazýva Armstrongovo číslo (rádu n ), ak:
abcd … = a n + b n + c n + d n + …
V prípade Armstrongovho čísla s 3 číslicami sa súčet kociek každej číslice rovná samotnému číslu. Napríklad 153 je Armstrongovo číslo, pretože:
153 = 1 * 1 * 1 + 5 * 5 * 5 + 3 * 3 * 3
Podobne, 1634 je Armstrongovo číslo, pretože:
1634 = 1 * 1 * 1 * 1 + 6 * 6 * 6 * 6 * + 3 * 3 * 3 * 3 + 4 * 4 * 4 * 4
Pred vyskúšaním tohto programu navštívte program JavaScript a skontrolujte Armstrongovo číslo.
Príklad: Armstrongove čísla medzi dvoma intervalmi
// 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); ) )
Výkon
Zadajte kladnú hodnotu nízkeho celého čísla: 8 Zadajte kladnú hodnotu vysokého celého čísla: 500 Armstrong Čísla: 8 9 153 370 371 407
Vo vyššie uvedenom programe je používateľ vyzvaný na zadanie dvoch celých čísel. Jeden je celé číslo s nižším intervalom a druhý s vyššou celočíselnou hodnotou.
parseInt()
Prevádza číselnú hodnotu reťazca na celočíselnú hodnotu.
for
Slučka sa používa prechádzať dvoch čísel poskytnutých užívateľom.
toString()
Metóda sa používa pre prevod čísla na reťazec. A length
vlastnosť sa používa na zistenie dĺžky reťazca. Preto v tomto prípade length
udáva celkový počet číslic.
let numberOfDigits = i.toString().length;
V prvej for
iterácii slučky ( i = 8 ),
- Nižšie číslo zadané používateľom je uložené v dočasnej premennej
temp
. - Na
while
iteráciu čísla sa používa slučka.- Operátor modul
%
sa používa pre získanie každé číslo číslice. Keď je číslo vydelené 10 , zvyšok je posledná číslica. V prvej iterácii8 % 10
dáva 8 . - Zvyšok sa vynásobí počtom číslic v danom počte (tu 1 ) a vypočíta sa súčet.
- Číslica je vydelená 10, aby sa odstránila posledná číslica, tj.
8 / 10
Dáva 0.
- Operátor modul
- Nakoniec sa suma porovná s počtom zadaným používateľom. Ak sú súčet a číslo rovnaké, zobrazí sa Armstrongovo číslo.
Slučka pokračuje pre všetky čísla, ktoré sú medzi dolným a horným okrajom poskytnutým používateľom. Vo vyššie uvedenom príklade sa slučka vykonáva od 8 do 500 .