Program Kotlin untuk Mencari faktor nombor

Dalam program ini, anda akan belajar mencari faktorial nombor menggunakan gelung untuk dan semasa di Kotlin. Anda juga akan belajar menggunakan julat untuk menyelesaikan masalah ini.

Faktor faktor nombor positif diberikan oleh:

 faktorial n (n!) = 1 * 2 * 3 * 4 *… * n 

Contoh 1: Cari faktorial nombor menggunakan gelung

 fun main(args: Array) ( val num = 10 var factorial: Long = 1 for (i in 1… num) ( // factorial = factorial * i; factorial *= i.toLong() ) println("Factorial of $num = $factorial") )

Semasa anda menjalankan program, outputnya adalah:

 Faktor faktor 10 = 3628800

Dalam program ini, kami telah menggunakan loop untuk melengkapkan semua nombor antara 1 dan bilangan yang diberikan (10), dan produk setiap nombor hingga num disimpan dalam faktorial pemboleh ubah.

Tidak seperti Java, di Kotlin, anda boleh menggunakan rentang ( 1… num) dan operator untuk mencari nombor antara 1 hingga angka.

Selain itu, kami telah menggunakan lama dan bukan untuk menyimpan banyak hasil faktorial.

Walau bagaimanapun, ia masih belum cukup besar untuk menyimpan nilai bilangan yang lebih besar (katakan 100). Untuk hasil yang tidak dapat disimpan dalam pemboleh ubah panjang, kami menggunakan BigIntegerpemboleh ubah yang dinyatakan di java.mathperpustakaan.

Inilah kod Java yang setara: Program Java untuk Mencari Factorial Nombor.

Contoh 2: Cari Factorial nombor menggunakan BigInteger

 import java.math.BigInteger fun main(args: Array) ( val num = 30 var factorial = BigInteger.ONE for (i in 1… num) ( // factorial = factorial * i; factorial = factorial.multiply(BigInteger.valueOf(num.toLong())) ) println("Factorial of $num = $factorial") )

Semasa anda menjalankan program, outputnya adalah:

 Faktorial 30 = 205891132094649000000000000000000000000000000

Di sini, bukannya long, kami menggunakan BigIntegerfaktorial pemboleh ubah.

Oleh kerana, *tidak dapat digunakan dengan BigInteger, kami sebaliknya menggunakan multiply()produk tersebut. Num juga mesti digunakan BigIntegeruntuk pendaraban.

Begitu juga, kita juga boleh menggunakan loop sementara untuk menyelesaikan masalah ini.

Contoh 3: Cari Factorial nombor menggunakan loop sementara

 fun main(args: Array) ( val num = 5 var i = 1 var factorial: Long = 1 while (i <= num) ( factorial *= i.toLong() i++ ) println("Factorial of $num = $factorial") )

Semasa anda menjalankan program, outputnya adalah:

 Faktor faktor 5 = 120

Dalam program di atas, tidak seperti loop untuk, kita harus meningkatkan nilai i di dalam badan gelung.

Walaupun kedua-dua program ini secara teknikal betul, lebih baik digunakan untuk gelung dalam kes ini. Ini kerana bilangan lelaran (hingga bilangan) diketahui.

Lawati halaman ini untuk belajar mencari faktor nombor menggunakan rekursi.

Artikel menarik...