Program JavaScript ke kontrole Armstrongova čísla (s příklady)

V tomto příkladu se naučíte psát program v JavaScriptu, abyste zkontrolovali, zda je číslo Armstrongovým číslem či nikoli.

Abyste pochopili tento příklad, měli byste znát následující programovací témata JavaScriptu:

  • Provozovatelé JavaScriptu
  • Zatímco JavaScript a dělat … zatímco Loop

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říklad 1: Zkontrolujte Armstrongův počet tří číslic

 // program to check an Armstrong number of three digits let sum = 0; const number = prompt('Enter a three-digit positive integer: '); // create a temporary variable let temp = number; while (temp> 0) ( // finding the one's digit let remainder = temp % 10; sum += remainder * remainder * remainder; // removing last digit from the number temp = parseInt(temp / 10); // convert float into integer ) // check the condition if (sum == number) ( console.log(`$(number) is an Armstrong number`); ) else ( console.log(`$(number) is not an Armstrong number.`); )

Výstup

 Zadejte trojciferné kladné celé číslo: 153 153 je Armstrongovo číslo.

Výše uvedený program přijímá vstup od uživatele. Pak,

  1. Číslo zadané uživatelem je uloženo v dočasné proměnné temp.
  2. K whileiteraci tříciferné hodnoty se používá smyčka.
    1. 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í iteraci 153 % 10dává 3 .
    2. Kostka zbývající číslice se vypočítá trojnásobným vynásobením číslice. A kostka je přidána do sumproměnné.
    3. Číslice je vydělena 10, aby se odstranila poslední číslice.
    4. whileSmyčka pokračuje iterace a dělením čísla od 10 až je číslo 0 .
  3. Nakonec se součet porovná s číslem zadaným uživatelem. Pokud je součet a číslo stejné, číslo je Armstrongovo číslo.

Poznámka : Ve výše uvedeném programu bylo možné vypočítat krychli čísla pomocí operátoru exponentu **. Například,sum += remainder ** 3;

Příklad 2: Zkontrolujte Armstrong počet n číslic

 // program to check an Armstrong number of n digits // take an input const number = prompt("Enter a positive integer"); const numberOfDigits = number.length; let sum = 0; // create a temporary variable let temp = number; while (temp> 0) ( let remainder = temp % 10; sum += remainder ** numberOfDigits; // removing last digit from the number temp = parseInt(temp / 10); // convert float into integer ) if (sum == number) ( console.log(`$(number) is an Armstrong number`); ) else ( console.log(`$(number) is not an Armstrong number.`); )

Výstup

 Zadejte kladné celé číslo: 92727 92727 je Armstrongovo číslo

Ve výše uvedeném programu je zkontrolován Armstrongův počet n číslic.

Když uživatel zadá číslo, bude bráno jako řetězec. lengthVlastnost vrací délku řetězce.

Číslo zadané uživatelem je uloženo v tempproměnné. A whilesmyčka se používá k iteraci, dokud její hodnota není menší než 0 . Každá číslice čísla je zvýšena na sílu délky čísla.

Zajímavé články...