В този пример ще се научите да пишете програма в JavaScript, за да намерите число на Армстронг между две цели числа.
За да разберете този пример, трябва да имате познанията по следните теми за програмиране на JavaScript:
- JavaScript за цикъл
Положително цяло число се нарича число на Армстронг (от порядък n ), ако:
abcd … = a n + b n + c n + d n + …
В случай на число на Армстронг от 3 цифри, сумата от кубчета от всяка цифра е равна на самото число. Например 153 е число на Армстронг, защото:
153 = 1 * 1 * 1 + 5 * 5 * 5 + 3 * 3 * 3
По същия начин 1634 е число на Армстронг, защото:
1634 = 1 * 1 * 1 * 1 + 6 * 6 * 6 * 6 * + 3 * 3 * 3 * 3 + 4 * 4 * 4 * 4
Преди да опитате тази програма, посетете програмата JavaScript, за да проверите номера на Армстронг.
Пример: Числа на Армстронг между два интервала
// 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); ) )
Изход
Въведете положителна ниска цяло число: 8 Въведете положително високо цяло число: 500 Армстронг Числа: 8 9 153 370 371 407
В горната програма потребителят е подканен да въведе две цели числа. Едното е по-ниското цяло число, а друго е по-високото цяло число.
В parseInt()
преобразува числов низ стойност на цяло число стойност на.
В for
линия се използва за линия през две числа, предоставени от потребителя.
В toString()
метода се използва за конвертиране на броя на низ. И length
свойството се използва за намиране на дължината на низ. Следователно, в този случай, length
дава общите цифри в числото.
let numberOfDigits = i.toString().length;
В първата for
итерация на цикъла ( i = 8 ),
- Долният номер, въведен от потребителя, се съхранява във временна променлива
temp
. - Един
while
цикъл се използва за обхождане номера.- Операторът на модула
%
се използва за получаване на всяко цифрено число. Когато числото се дели на 10 , остатъкът е последната цифра. В първата итерация8 % 10
дава 8 . - Остатъкът се умножава по броя на цифрите в това число (тук 1 ) и сумата се изчислява.
- Цифрата се разделя на 10, за да се премахне последната цифра, т.е.
8 / 10
дава 0.
- Операторът на модула
- Накрая сумата се сравнява с номера, въведен от потребителя. Ако сумата и числото са равни, се показва числото на Армстронг.
Цикълът продължава за всички числа, които са между долната и горната граница, предоставени от потребителя. В горния пример цикълът се изпълнява от 8 до 500 .