Dalam contoh ini, anda akan belajar menulis program dalam JavaScript untuk memeriksa sama ada nombor itu adalah nombor Armstrong atau tidak.
Untuk memahami contoh ini, anda harus mempunyai pengetahuan mengenai topik pengaturcaraan JavaScript berikut:
- Pengendali JavaScript
- JavaScript sambil dan lakukan … sambil Loop
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
Contoh 1: Periksa Armstrong Bilangan Tiga Digit
// 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.`); )
Pengeluaran
Masukkan bilangan bulat positif tiga digit: 153 153 adalah nombor Armstrong.
Program di atas mengambil input daripada pengguna. Kemudian,
- Nombor yang dimasukkan oleh pengguna disimpan dalam pemboleh ubah sementara
temp
. - A
while
gelung digunakan untuk melelar nilai tiga digit.- The pengendali modulus
%
digunakan untuk mendapatkan setiap nombor digit. Apabila nombor dibahagi dengan 10 , selebihnya adalah digit terakhir. Pada lelaran pertama,153 % 10
memberikan 3 . - Kiub digit selebihnya dikira dengan mengalikan digit tiga kali. Dan kubus ditambahkan ke
sum
pemboleh ubah. - Angka dibahagi dengan 10 untuk membuang digit terakhir.
- The
while
gelung terus iterating dan membahagikan nombor dengan 10 sehingga nombor adalah 0 .
- The pengendali modulus
- Akhirnya, jumlahnya dibandingkan dengan nombor yang dimasukkan oleh pengguna. Sekiranya jumlah dan bilangannya sama, nombor itu adalah nombor Armstrong.
Catatan : Dalam program di atas, kubus nombor dapat dihitung menggunakan operator eksponen **
. Sebagai contoh,sum += remainder ** 3;
Contoh 2: Periksa Armstrong Bilangan n Digit
// 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.`); )
Pengeluaran
Masukkan bilangan bulat positif: 92727 92727 adalah nombor Armstrong
Dalam program di atas, bilangan angka n Armstrong diperiksa.
Apabila pengguna memasukkan nombor, ia diambil sebagai rentetan. The length
harta mengembalikan panjang rentetan.
Nombor yang dimasukkan oleh pengguna disimpan dalam temp
pemboleh ubah. Dan while
gelung digunakan untuk melakukan lelaran sehingga nilainya kurang dari 0 . Setiap digit nombor dinaikkan ke kekuatan panjang nombor.