Program JavaScript pentru a verifica numărul Armstrong (cu exemple)

În acest exemplu, veți învăța să scrieți un program în JavaScript pentru a verifica dacă un număr este sau nu un număr Armstrong.

Pentru a înțelege acest exemplu, ar trebui să aveți cunoștințele despre următoarele subiecte de programare JavaScript:

  • Operatori JavaScript
  • JavaScript while și do … while Buclă

Un număr întreg pozitiv se numește număr Armstrong (de ordinul n) dacă

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

În cazul unui număr Armstrong de 3 cifre, suma cuburilor fiecărei cifre este egală cu numărul în sine. De exemplu, 153 este un număr Armstrong deoarece

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

În mod similar, 1634 este un număr Armstrong deoarece:

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

Exemplul 1: Verificați numărul Armstrong de trei cifre

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

Ieșire

 Introduceți un număr întreg pozitiv din trei cifre: 153 153 este un număr Armstrong.

Programul de mai sus primește o intrare de la utilizator. Apoi,

  1. Numărul introdus de utilizator este stocat într-o variabilă temporară temp.
  2. O whilebuclă este utilizată pentru a itera o valoare din trei cifre.
    1. Operatorul modulului % este utilizat pentru a obține fiecare număr cifre. Când un număr este împărțit la 10 , restul este ultima cifră. În prima iterație, 153 % 103 .
    2. Cubul cifrei restului este calculat prin înmulțirea cifrei de trei ori. Și cubul este adăugat sumvariabilei.
    3. Cifra este împărțită la 10 pentru a elimina ultima cifră.
    4. whileBuclă continuă iterarea și împărțirea numărului de 10 până când numărul este 0 .
  3. În cele din urmă, suma este comparată cu numărul introdus de utilizator. Dacă suma și numărul sunt egale, numărul este un număr Armstrong.

Notă : În programul de mai sus, cubul unui număr ar putea fi calculat folosind un operator exponent **. De exemplu,sum += remainder ** 3;

Exemplul 2: Verificați numărul Armstrong de n cifre

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

Ieșire

 Introduceți un număr întreg pozitiv: 92727 92727 este un număr Armstrong

În programul de mai sus, se verifică un număr Armstrong de n cifre.

Când utilizatorul introduce un număr, acesta este luat ca un șir. lengthProprietatea returnează lungimea unui șir de caractere.

Numărul introdus de utilizator este stocat într-o tempvariabilă. Și o whilebuclă este utilizată pentru a itera până când valoarea sa este mai mică de 0 . Fiecare cifră a numărului este ridicată la puterea lungimii numărului.

Articole interesante...