V tomto příkladu se naučíte psát program v JavaScriptu, abyste našli Armstrongovo číslo mezi dvěma celočíselnými hodnotami.
Abyste pochopili tento příklad, měli byste znát následující programovací témata JavaScriptu:
- JavaScript pro smyčku
Kladné celé číslo se nazývá Armstrongovo číslo (řádu n ), pokud:
abcd… = a n + b n + c n + d n +…
V případě Armstrongova počtu 3 číslic se součet kostek každé číslice rovná číslu samotnému. Například 153 je Armstrongovo číslo, protože:
153 = 1 * 1 * 1 + 5 * 5 * 5 + 3 * 3 * 3
Podobně 1634 je Armstrongovo číslo, protože:
1634 = 1 * 1 * 1 * 1 + 6 * 6 * 6 * 6 * + 3 * 3 * 3 * 3 + 4 * 4 * 4 * 4
Před vyzkoušením tohoto programu navštivte program JavaScript a zkontrolujte číslo Armstrong.
Příklad: Armstrongova čísla mezi dvěma intervaly
// 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ýstup
Zadejte kladnou nízkou celočíselnou hodnotu: 8 Zadejte kladnou vysokou celočíselnou hodnotu: 500 Armstrongova čísla: 8 9 153 370 371 407
Ve výše uvedeném programu je uživatel vyzván k zadání dvou celých čísel. Jedním z nich je celé číslo s nižším intervalem a druhým je vyšší celočíselná hodnota.
parseInt()
Převádí číselnou hodnotu řetězce na celočíselnou hodnotu.
for
Smyčka se používá procházet dvou čísel poskytnutých uživatelem.
toString()
Metoda se používá pro převod čísla na řetězec. A length
vlastnost se používá k zjistit délku řetězce. V tomto případě tedy length
udává celkový počet číslic.
let numberOfDigits = i.toString().length;
V první for
iteraci smyčky ( i = 8 ),
- Nižší počet zadaný uživatelem je uložen v dočasné proměnné
temp
. - K
while
iteraci čísla se používá smyčka.- Operátor modul
%
se používá pro získání každé číslo číslice. Když je číslo vyděleno 10 , zbytek je poslední číslice. V první iteraci8 % 10
dává 8 . - Zbytek se vynásobí počtem číslic v tomto počtu (zde 1 ) a vypočítá se součet.
- Číslice je dělena 10, aby se odstranila poslední číslice, tj.
8 / 10
Dává 0.
- Operátor modul
- Nakonec se součet porovná s číslem zadaným uživatelem. Pokud je součet a číslo stejné, zobrazí se Armstrongovo číslo.
Smyčka pokračuje u všech čísel, která jsou mezi dolní a horní hranicí poskytovanou uživatelem. Ve výše uvedeném příkladu se smyčka provádí od 8 do 500 .