Program Java untuk Memeriksa Angka Armstrong

Dalam program ini, anda akan belajar untuk memeriksa sama ada nombor yang diberikan adalah nombor yang kuat atau tidak. Anda akan belajar melakukannya dengan menggunakan gelung untuk gelung dan sebentar di Java.

Untuk memahami contoh ini, anda harus mempunyai pengetahuan mengenai topik pengaturcaraan Java berikut:

  • Java sambil dan lakukan … sambil Loop
  • Java jika … lain Pernyataan
  • Java untuk Gelung

Bilangan bulat positif disebut bilangan pesanan Armstrong dan jika

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

Sekiranya bilangan Armstrong 3 digit, jumlah kubus setiap digit sama dengan nombor itu sendiri. Sebagai contoh:

 153 = 1 * 1 * 1 + 5 * 5 * 5 + 3 * 3 * 3 // 153 ialah nombor Armstrong. 

Contoh 1: Periksa Armstrong Number untuk nombor 3 digit

 public class Armstrong ( public static void main(String() args) ( int number = 371, originalNumber, remainder, result = 0; originalNumber = number; while (originalNumber != 0) ( remainder = originalNumber % 10; result += Math.pow(remainder, 3); originalNumber /= 10; ) if(result == number) System.out.println(number + " is an Armstrong number."); else System.out.println(number + " is not an Armstrong number."); ) )

Pengeluaran

 371 adalah nombor Armstrong.
  • Pertama, nilai nombor (nombor) yang disimpan disimpan dalam pemboleh ubah integer lain, bilangan asli. Ini kerana, kita perlu membandingkan nilai nombor akhir dan nombor asal pada akhir.
  • Kemudian, loop sementara digunakan untuk melengkung melalui NumberN original sehingga sama dengan 0.
    • Pada setiap lelaran, digit terakhir angka disimpan di baki.
    • Kemudian, selebihnya digerakkan oleh 3 (bilangan digit) menggunakan Math.pow()fungsi dan ditambahkan ke hasil.
    • Kemudian, digit terakhir dikeluarkan dari nombor asal selepas pembahagian dengan 10.
  • Akhirnya, hasil dan bilangan dibandingkan. Sekiranya sama, itu adalah nombor Armstrong. Sekiranya tidak, tidak.

Contoh 2: Periksa nombor Armstrong untuk n digit

 public class Armstrong ( public static void main(String() args) ( int number = 1634, originalNumber, remainder, result = 0, n = 0; originalNumber = number; for (;originalNumber != 0; originalNumber /= 10, ++n); originalNumber = number; for (;originalNumber != 0; originalNumber /= 10) ( remainder = originalNumber % 10; result += Math.pow(remainder, n); ) if(result == number) System.out.println(number + " is an Armstrong number."); else System.out.println(number + " is not an Armstrong number."); ) )

Pengeluaran

 1634 adalah nombor Armstrong.

Dalam program ini, bukannya menggunakan loop sementara, kami telah menggunakan dua untuk loop.

Gelung pertama digunakan untuk mengira bilangan digit dalam nombor tersebut. Ia adalah bentuk pekat:

 untuk (; originalNumber! = 0; originalNumber / = 10) (n ++;)

Yang kedua untuk gelung kemudian mengira hasil di mana pada setiap lelaran, selebihnya dikuasakan oleh bilangan digit n.

Lawati halaman ini untuk mengetahui, bagaimana anda dapat menampilkan semua nombor yang kuat antara dua selang.

Artikel menarik...