Program Kotlin untuk Menemukan Faktorial Bilangan

Dalam program ini, Anda akan belajar menemukan faktorial sebuah bilangan menggunakan for dan while loop di Kotlin. Anda juga akan belajar menggunakan rentang untuk menyelesaikan masalah ini.

Faktorial dari bilangan positif n diberikan oleh:

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

Contoh 1: Menemukan Faktorial sebuah bilangan menggunakan for loop

 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") )

Saat Anda menjalankan program, hasilnya adalah:

 Faktorial 10 = 3628800

Dalam program ini, kami telah menggunakan for loop to loop melalui semua angka antara 1 dan angka yang diberikan num (10), dan produk dari setiap angka sampai jumlah disimpan dalam variabel faktorial.

Tidak seperti Java, di Kotlin, Anda bisa menggunakan range ( 1… num) dan operator in untuk mengulang angka antara 1 sampai num.

Juga, kita telah menggunakan long daripada int untuk menyimpan hasil besar faktorial.

Namun, itu masih belum cukup besar untuk menyimpan nilai angka yang lebih besar (katakanlah 100). Untuk hasil yang tidak dapat disimpan dalam variabel panjang, kami menggunakan BigIntegervariabel yang dideklarasikan di java.mathperpustakaan.

Berikut kode Java yang setara: Program Java untuk Menemukan Faktorial Bilangan.

Contoh 2: Menemukan Faktorial sebuah bilangan 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") )

Saat Anda menjalankan program, hasilnya adalah:

 Faktorial 30 = 205891132094649000000000000000000000000000000

Di sini, alih-alih long, kami menggunakan BigIntegerfaktorial variabel.

Karena, *tidak dapat digunakan dengan BigInteger, kami malah menggunakan multiply()untuk produk. Juga, num harus dicor BigIntegeruntuk perkalian.

Demikian juga, kita juga dapat menggunakan loop sementara untuk menyelesaikan masalah ini.

Contoh 3: Menemukan Faktorial sebuah bilangan menggunakan while loop

 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") )

Saat Anda menjalankan program, hasilnya adalah:

 Faktorial 5 = 120

Dalam program di atas, tidak seperti perulangan for, kita harus menaikkan nilai i di dalam badan perulangan.

Meskipun kedua program secara teknis benar, lebih baik menggunakan for loop dalam kasus ini. Itu karena jumlah iterasi (hingga num) diketahui.

Kunjungi halaman ini untuk belajar mencari faktorial sebuah bilangan menggunakan rekursi.

Artikel yang menarik...