JavaScript-program för att kontrollera Armstrong-nummer (med exempel)

I det här exemplet lär du dig att skriva ett program i JavaScript för att kontrollera om ett nummer är ett Armstrong-nummer eller inte.

För att förstå detta exempel bör du ha kunskap om följande JavaScript-programmeringsämnen:

  • JavaScript-operatörer
  • JavaScript medan och gör … medan Loop

Ett positivt heltal kallas ett Armstrong-tal (av ordning n) om

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

När det gäller ett Armstrong-antal på tre siffror är summan av kuber av varje siffra lika med själva numret. Till exempel är 153 ett Armstrong-nummer på grund av

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

På samma sätt är 1634 ett Armstrong-nummer eftersom:

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

Exempel 1: Kontrollera Armstrong antal tre siffror

 // 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.`); )

Produktion

 Ange ett tresiffrigt positivt heltal: 153 153 är ett Armstrong-tal.

Ovanstående program tar en inmatning från användaren. Sedan,

  1. Numret som användaren anger lagras i en tillfällig variabel temp.
  2. En whileslinga används för att upprepa ett tresiffrigt värde.
    1. Den modul Operatören % används för att erhålla varje siffrigt nummer. När ett nummer divideras med 10 är resten den sista siffran. I den första iterationen, 153 % 10ger 3 .
    2. Den återstående siffrans kub beräknas genom att multiplicera siffran tre gånger. Och kuben läggs till sumvariabeln.
    3. Siffran divideras med 10 för att ta bort den sista siffran.
    4. Den whilefortsätter slingan iteration och dividera antalet med 10 tills numret är 0 .
  3. Slutligen jämförs summan med det antal som användaren har angett. Om summan och antalet är lika är numret ett Armstrong-tal.

Obs! I ovanstående program kan kuben för ett tal beräknas med en exponentoperator **. Till exempel,sum += remainder ** 3;

Exempel 2: Kontrollera Armstrong antal n siffror

 // 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.`); )

Produktion

 Ange ett positivt heltal: 92727 92727 är ett Armstrong-tal

I programmet ovan kontrolleras ett Armstrong antal n siffror.

När användaren anger ett nummer tas det som en sträng. Den lengthegenskapen returnerar längden av en sträng.

Numret som användaren anger lagras i en tempvariabel. Och en whileslinga används för att iterera tills dess värde är mindre än 0 . Varje siffra i numret höjs till kraften för numret.

Intressanta artiklar...