Dalam program ini, Anda akan belajar mencari GCD dari dua angka di Kotlin. Ini dilakukan dengan menggunakan for dan while loop dengan bantuan pernyataan if else.
Untuk memahami contoh ini, Anda harus memiliki pengetahuan tentang topik pemrograman Java berikut:
- Pernyataan Java if… else
- Java untuk Loop
- Java sementara dan melakukan… saat Loop
HCF atau GCD dari dua bilangan bulat adalah bilangan bulat terbesar yang dapat membagi kedua angka dengan tepat (tanpa sisa).
Contoh 1: Temukan GCD dari dua angka menggunakan pernyataan for loop dan if
public class GCD ( public static void main(String() args) ( int n1 = 81, n2 = 153, gcd = 1; for(int i = 1; i <= n1 && i <= n2; ++i) ( // Checks if i is factor of both integers if(n1 % i==0 && n2 % i==0) gcd = i; ) System.out.printf("G.C.D of %d and %d is %d", n1, n2, gcd); ) )
Keluaran
GCD dari 81 dan 153 adalah 9
Di sini, dua nomor yang GCD-nya dapat ditemukan disimpan di n1 dan n2 masing-masing.
Kemudian, perulangan for dijalankan sampai i lebih kecil dari kedua n1 dan n2. Dengan cara ini, semua angka antara 1 dan angka terkecil dari dua angka diiterasi untuk mencari PBT.
Jika n1 dan n2 dapat dibagi oleh i, gcd diatur ke angka. Hal ini berlangsung hingga menemukan bilangan terbesar (PBT) yang membagi n1 dan n2 tanpa sisa.
Kami juga dapat menyelesaikan masalah ini menggunakan loop sementara sebagai berikut:
Contoh 2: Temukan GCD dari dua angka menggunakan pernyataan while loop dan if else
public class GCD ( public static void main(String() args) ( int n1 = 81, n2 = 153; while(n1 != n2) ( if(n1> n2) n1 -= n2; else n2 -= n1; ) System.out.println("G.C.D = " + n1); ) )
Keluaran
PBT = 9
Ini adalah cara yang lebih baik untuk menemukan GCD. Dalam metode ini, bilangan bulat yang lebih kecil dikurangi dari bilangan bulat yang lebih besar, dan hasilnya diberikan ke variabel yang memiliki bilangan bulat yang lebih besar. Proses ini dilanjutkan hingga n1 dan n2 sama.
Kedua program di atas berfungsi sebagaimana mestinya hanya jika pengguna memasukkan bilangan bulat positif. Berikut sedikit modifikasi dari contoh kedua untuk mencari PBT untuk bilangan bulat positif dan negatif.
Contoh 3: PBT untuk bilangan positif dan negatif
public class GCD ( public static void main(String() args) ( int n1 = 81, n2 = -153; // Always set to positive n1 = ( n1> 0) ? n1 : -n1; n2 = ( n2> 0) ? n2 : -n2; while(n1 != n2) ( if(n1> n2) n1 -= n2; else n2 -= n1; ) System.out.println("G.C.D = " + n1); ) )
Keluaran
PBT = 9