Program Kotlin 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 melakukan ini dengan menggunakan gelung sementara di Kotlin.

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

 fun main(args: Array) ( val number = 371 var originalNumber: Int var remainder: Int var result = 0 originalNumber = number while (originalNumber != 0) ( remainder = originalNumber % 10 result += Math.pow(remainder.toDouble(), 3.0).toInt() originalNumber /= 10 ) if (result == number) println("$number is an Armstrong number.") else println("$number is not an Armstrong number.") ) 

Semasa anda menjalankan program, outputnya adalah:

 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.
      Di sini, selebihnya ditukar kepada Doublekerana powhanya menerima Doubleparameter, dan nilainya ditukar semula menjadiInt
    • Kemudian, digit terakhir dikeluarkan dari nombor asal selepas pembahagian dengan 10.
  • Akhirnya, hasil dan bilangan dibandingkan. Sekiranya sama, itu adalah nombor yang kuat. Sekiranya tidak, tidak.

Inilah kod Java yang setara: Program Java untuk Memeriksa Armstrong Number

Contoh 2: Periksa nombor Armstrong untuk n digit

 fun main(args: Array) ( val number = 1634 var originalNumber: Int var remainder: Int var result = 0 var n = 0 originalNumber = number while (originalNumber != 0) ( originalNumber /= 10 ++n ) originalNumber = number while (originalNumber != 0) ( remainder = originalNumber % 10 result += Math.pow(remainder.toDouble(), n.toDouble()).toInt() originalNumber /= 10 ) if (result == number) println("$number is an Armstrong number.") else println("$number is not an Armstrong number.") )

Dalam program ini, kami menggunakan dua sambil gelung. Gelung sementara yang pertama digunakan untuk mengira bilangan digit dalam nombor tersebut.

Kemudian, nombor asli dikembalikan ke nombor yang diberikan.

Gelung sementara kedua kemudian memeriksa sama ada nombor itu kuat atau tidak.

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

Artikel menarik...