„JavaScript“ programa, skirta rasti Armstrongo skaičių per intervalą

Šiame pavyzdyje išmoksite rašyti programą „JavaScript“, kad rastumėte Armstrongo skaičių tarp dviejų sveikųjų skaičių.

Norėdami suprasti šį pavyzdį, turite žinoti šias „JavaScript“ programavimo temas:

  • „Loop“ „JavaScript“

Teigiamas sveikasis skaičius vadinamas Armstrongo skaičiumi ( n eilės ), jei:

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

Jei „Armstrong“ yra 3 skaitmenys, kiekvieno skaitmens kubelių suma lygi pačiam skaičiui. Pavyzdžiui, 153 yra Armstrongo skaičius, nes:

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

Panašiai 1634 yra Armstrongo numeris, nes:

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

Prieš išbandydami šią programą, apsilankykite „JavaScript“ programoje ir patikrinkite Armstrongo numerį.

Pavyzdys: Armstrongo skaičiai tarp dviejų intervalų

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

Rezultatas

 Įveskite teigiamą mažo sveiko skaičiaus vertę: 8 Įveskite teigiamą didelio skaičiaus vertę: 500 Armstrongo skaičių: 8 9 153 370 371 407

Pirmiau pateiktoje programoje vartotojas raginamas įvesti du sveikus skaičius. Vienas yra mažesnis intervalo sveikasis skaičius, o kitas - didesnė sveikojo skaičiaus reikšmė.

parseInt()Konvertuoja skaitinė eilutė vertę iki sveikojo skaičiaus vertės.

forKilpa naudojama kilpa per dviejų skaičių, kurias teikia vartotojui.

toString()Metodas yra naudojama konvertuoti skaičių į eilutę. Ir lengthturtas naudojamas rasti eilutę ilgį. Taigi šiuo atveju lengthnurodomas bendras skaičiaus skaitmuo.

 let numberOfDigits = i.toString().length;

Pirmoje forciklo iteracijoje ( i = 8 )

  1. Apatinis vartotojo įvestas skaičius saugomas laikinajame kintamajame temp.
  2. whileKilpa naudojama, kad iš eilės numerį.
    1. Modulis operatorius % naudojamas gauti kiekvieną skaitmenų skaičių. Kai skaičius padalijamas iš 10 , likusi dalis yra paskutinis skaitmuo. Pirmoje iteracijoje 8 % 10duodama 8 .
    2. Likusi dalis padauginama iš to skaičiaus skaitmenų skaičiaus (čia 1 ) ir apskaičiuojama suma.
    3. Skaičius padalinamas iš 10, kad būtų pašalintas paskutinis skaitmuo, ty 8 / 10gaunamas 0.
  3. Galiausiai suma palyginama su vartotojo įvestu skaičiumi. Jei suma ir skaičius yra vienodi, rodomas Armstrongo skaičius.

Visų skaičių, kurie yra tarp vartotojo pateiktų apatinių ir viršutinių ribų, ciklas tęsiasi. Ankstesniame pavyzdyje kilpa vykdoma nuo 8 iki 500 .

Įdomios straipsniai...