Dalam contoh ini, anda akan belajar menulis program dalam JavaScript untuk mencari nombor Armstrong antara dua nilai integer.
Untuk memahami contoh ini, anda harus mempunyai pengetahuan mengenai topik pengaturcaraan JavaScript berikut:
- JavaScript untuk gelung
Bilangan bulat positif disebut nombor Armstrong (urutan n ) jika:
abcd… = a n + b n + c n + d n +…
Bagi bilangan Armstrong 3 digit, jumlah kubus setiap digit sama dengan nombor itu sendiri. Sebagai contoh, 153 adalah nombor Armstrong kerana:
153 = 1 * 1 * 1 + 5 * 5 * 5 + 3 * 3 * 3
Begitu juga, 1634 adalah nombor Armstrong kerana:
1634 = 1 * 1 * 1 * 1 + 6 * 6 * 6 * 6 * + 3 * 3 * 3 * 3 + 4 * 4 * 4 * 4
Sebelum mencuba program ini, kunjungi Program JavaScript untuk Memeriksa Armstrong Number.
Contoh: Angka Armstrong Antara Dua Selang
// 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); ) )
Pengeluaran
Masukkan nilai bilangan bulat rendah positif: 8 Masukkan nilai integer tinggi positif: 500 Nombor Armstrong: 8 9 153 370 371 407
Dalam program di atas, pengguna diminta memasukkan dua bilangan bulat. Salah satunya adalah bilangan bulat selang yang lebih rendah dan yang lain adalah nilai bilangan bulat yang lebih tinggi.
Yang parseInt()
menukarkan nilai rentetan angka untuk nilai integer.
The for
gelung digunakan untuk gelung melalui dua nombor yang diberikan oleh pengguna.
The toString()
kaedah yang digunakan untuk menukar nombor kepada rentetan. Dan length
harta itu digunakan untuk mencari panjang tali. Oleh itu, dalam kes ini, length
memberikan jumlah digit dalam nombor tersebut.
let numberOfDigits = i.toString().length;
Dalam for
lelaran gelung pertama ( i = 8 ),
- Nombor yang lebih rendah yang dimasukkan oleh pengguna disimpan dalam pemboleh ubah sementara
temp
. - A
while
gelung digunakan untuk melelar nombor.- The pengendali modulus
%
digunakan untuk mendapatkan setiap nombor digit. Apabila nombor dibahagi dengan 10 , selebihnya adalah digit terakhir. Pada lelaran pertama,8 % 10
memberikan 8 . - Selebihnya dikalikan dengan bilangan digit dalam nombor itu (di sini 1 ) dan jumlahnya dikira.
- Digit dibahagi dengan 10 untuk membuang digit terakhir, iaitu
8 / 10
memberikan 0.
- The pengendali modulus
- Akhirnya, jumlahnya dibandingkan dengan nombor yang dimasukkan oleh pengguna. Sekiranya jumlah dan jumlahnya sama, nombor Armstrong dipaparkan.
Gelung berterusan untuk semua nombor yang berada di antara batas bawah dan atas yang disediakan oleh pengguna. Dalam contoh di atas, gelung dijalankan dari 8 hingga 500 .