У овом примеру ћете научити да пишете програм на ЈаваСцрипт-у да бисте проверили да ли је број Армстронгов број или не.
Да бисте разумели овај пример, требало би да имате знање о следећим темама програмирања ЈаваСцрипт:
- ЈаваСцрипт Оператори
- ЈаваСцрипт вхиле и уради … вхиле Лооп
Позитивни цели број назива се Армстронгов број (реда н) ако
абцд… = а н + б н + ц н + д н +…
У случају Армстронгова броја од 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
Пример 1: Проверите Армстронгов број од три цифре
// 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.`); )
Оутпут
Унесите троцифрени позитивни цели број: 153 153 је Армстронгов број.
Горњи програм узима податке од корисника. Онда,
- Број који је корисник унео чува се у привременој променљивој
temp
. while
Петља се користи за поновити троцифрени вредност.- Оператер Модул
%
се користи за добијање сваког цифара. Када се број подели са 10 , остатак је последња цифра. У првој итерацији153 % 10
даје 3 . - Коцка остатка цифре израчунава се множењем цифре три пута. И коцка се додаје
sum
променљивој. - Цифра се дели са 10 да би се уклонила последња цифра.
while
Петља се наставља итератинг и дељењем броја од 10 до број 0 .
- Оператер Модул
- Коначно, збир се упоређује са бројем који је унео корисник. Ако су збир и број једнаки, број је Армстронгов број.
Напомена : У горњем програму, коцка броја може се израчунати помоћу оператора експонента **
. На пример,sum += remainder ** 3;
Пример 2: Проверите Армстронгов број н цифара
// 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.`); )
Оутпут
Унесите позитиван цели број: 92727 92727 је Армстронгов број
У горњем програму се проверава Армстронгов број од н цифара.
Када корисник унесе број, он се узима као низ. length
Имовина враћа дужину стринга.
Број који је унео корисник чува се у temp
променљивој. А while
петља се користи за понављање све док њена вредност није мања од 0 . Свака цифра броја се подиже у степен дужине броја.