Bir Aralıkta Armstrong Sayısını Bulmak için JavaScript Programı

Bu örnekte, iki tamsayı değeri arasında bir Armstrong sayısı bulmak için JavaScript'te bir program yazmayı öğreneceksiniz.

Bu örneği anlamak için, aşağıdaki JavaScript programlama konuları hakkında bilgi sahibi olmalısınız:

  • Döngü için JavaScript

Pozitif bir tam sayı, aşağıdaki durumlarda Armstrong numarası (sıra n ) olarak adlandırılır :

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

Armstrong sayısının 3 basamaklı olması durumunda, her basamağın küplerinin toplamı, sayının kendisine eşittir. Örneğin, 153 bir Armstrong numarasıdır çünkü:

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

Benzer şekilde, 1634 bir Armstrong numarasıdır çünkü:

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

Bu programı denemeden önce, Armstrong Numarasını Kontrol Etmek için JavaScript Programını ziyaret edin.

Örnek: İki Aralık Arasındaki Armstrong Sayıları

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

Çıktı

 Pozitif bir düşük tam sayı değeri girin: 8 Pozitif bir yüksek tam sayı değeri girin: 500 Armstrong Sayılar: 8 9153370371407

Yukarıdaki programda, kullanıcıdan iki tam sayı girmesi istenir. Biri düşük aralıklı tam sayıdır ve diğeri daha yüksek tam sayı değeridir.

parseInt()Bir tamsayı değerine sayısal dize değerini dönüştürür.

forHalka, kullanıcı tarafından sağlanan iki sayı döngü kullanılır.

toString()Yöntem, bir dizeye sayısını dönüştürmek için kullanılır. Ve lengthözellik, bir dizenin uzunluğunu bulmak için kullanılır. Dolayısıyla bu durumda, lengthsayıdaki toplam basamakları verir.

 let numberOfDigits = i.toString().length;

İlk fordöngü yinelemesinde ( i = 8 ),

  1. Kullanıcı tarafından girilen düşük sayı, geçici bir değişkende saklanır temp.
  2. whileNumarayı yinelemek için bir döngü kullanılır.
    1. Modülü operatör % her basamaklı bir sayı elde etmek için kullanılır. Bir sayı 10'a bölündüğünde , kalan son rakamdır. İlk iterasyonda 88 % 10 verir .
    2. Kalan, o sayıdaki basamak sayısıyla (burada 1 ) çarpılır ve toplam hesaplanır.
    3. Rakam, son rakamı kaldırmak için 10'a bölünür , yani 8 / 100 verir.
  3. Son olarak, toplam, kullanıcı tarafından girilen sayı ile karşılaştırılır. Toplam ve sayı eşitse, Armstrong numarası görüntülenir.

Döngü, kullanıcı tarafından sağlanan alt ve üst sınırlar arasında kalan tüm sayılar için devam eder. Yukarıdaki örnekte, döngü yürütülür 8 için 500 .

Ilginç makaleler...