Program Kotlin untuk Mencari GCD dua Nombor

Dalam program ini, anda akan belajar mencari GCD dua nombor di Kotlin. Ini dilakukan dengan menggunakan while loop dengan bantuan penyataan if else.

HCF atau GCD dua bilangan bulat adalah bilangan bulat terbesar yang dapat membahagikan kedua-dua nombor dengan tepat (tanpa baki).

Contoh 1: Cari GCD dua nombor menggunakan gelung sambil

 fun main(args: Array) ( val n1 = 81 val n2 = 153 var gcd = 1 var i = 1 while (i <= n1 && i <= n2) ( // Checks if i is factor of both integers if (n1 % i == 0 && n2 % i == 0) gcd = i ++i ) println("G.C.D of $n1 and $n2 is $gcd") )

Semasa anda menjalankan program, outputnya adalah:

 GCD 81 dan 153 ialah 9

Di sini, dua nombor yang mesti dijumpai GCD disimpan di n1 dan n2 masing-masing.

Kemudian, loop sementara dijalankan sehingga i kurang daripada n1 dan n2. Dengan cara ini, semua nombor antara 1 dan terkecil dari dua nombor tersebut diulang untuk mencari GCD.

Sekiranya kedua-dua n1 dan n2 dibahagi dengan i, gcd ditetapkan ke nombor. Ini berterusan sehingga ia menemui nombor terbesar (GCD) yang membahagi kedua n1 dan n2 tanpa baki.

Tidak seperti Java, anda tidak dapat menggunakan loop for dengan syarat untuk masalah ini. Inilah kod Java yang setara: Program Java untuk Mencari GCD dua Nombor.

Terdapat alternatif yang lebih baik untuk mencari GCD di Kotlin seperti berikut:

Contoh 2: Cari GCD dua nombor (Alternatif Lebih Baik)

 fun main(args: Array) ( var n1 = 81 var n2 = 153 while (n1 != n2) ( if (n1> n2) n1 -= n2 else n2 -= n1 ) println("G.C.D = $n1") )

Semasa anda menjalankan program, outputnya adalah:

 GCD = 9

Ini adalah kaedah yang lebih baik untuk mencari GCD. Dalam kaedah ini, bilangan bulat yang lebih kecil ditolak dari bilangan bulat yang lebih besar, dan hasilnya diberikan kepada pemboleh ubah yang memegang bilangan bulat yang lebih besar. Proses ini diteruskan sehingga n1 dan n2 sama.

Dua program di atas berfungsi sebagaimana mestinya hanya jika pengguna memasukkan bilangan bulat positif. Berikut adalah sedikit pengubahsuaian contoh kedua untuk mencari GCD bagi bilangan bulat positif dan negatif.

Contoh 3: GCD untuk nombor positif dan negatif

 fun main(args: Array) ( var n1 = 81 var n2 = -153 // Always set to positive n1 = if (n1> 0) n1 else -n1 n2 = if (n2> 0) n2 else -n2 while (n1 != n2) ( if (n1> n2) n1 -= n2 else n2 -= n1 ) println("G.C.D = $n1") )

Semasa anda menjalankan program, outputnya adalah:

 GCD = 9

Artikel menarik...