Latihan Kode Program Java: Cara Cek Bilangan Prima

Latihan soal algoritma kode program Java kali ini akan membahas cara memeriksa apakah sebuah angka merupakan bilangan prima atau tidak.

Materi ini berhubungan dengan logika matematika serta konsep perulangan for dan if else.


Soal Cek Bilangan Prima

Buatlah kode program Java yang menerima satu inputan angka bulat. Kemudian kode program akan menampilkan pesan apakah angka tersebut termasuk bilangan prima atau bukan.

Bonus: Selain menampilkan iya atau tidak, tuliskan pula alasan kenapa bilangan tersebut bukan bilangan prima.

Berikut contoh tampilan akhir yang diinginkan :

Input sebuah angka bulat: 79
79 adalah angka prima

Berikut contoh tampilan akhir yang diinginkan (soal bonus) :

Input sebuah angka bulat: 77
77 bukan angka prima karena bisa dibagi 7

Tips Membuat Kode Program Cek Bilangan Prima

Soal ini melatih pemahaman terkait logika matematika dan konsep perulangan (looping) serta kondisi if else. Berikut tutorial pendahuluan yang bisa diikuti:

Suatu angka disebut sebagai bilangan prima jika angka tersebut tidak bisa dibagi dengan angka lain, selain angka itu sendiri dan 1.

Sebagai contoh, 3 adalah bilangan prima karena hanya bisa dibagi dengan 3. 7 juga bilangan prima karena hanya bisa dibagi dengan angka 7 saja. Sedangkan 12 bukan bilangan prima karena bisa dibagi dengan angka 2.

Pemeriksaan apakah suatu angka habis dibagi dengan angka lain bisa dilakukan dengan operator modulus ( % ). Dalam bahasa Java, 12 % 2 akan menghasilkan angka 0, yang berarti 12 habis dibagi dengan 2. Konsep inilah yang bisa kita pakai untuk membuat kode program pemeriksa bilangan prima.

Idenya adalah, buat sebuah perulangan untuk memeriksa setiap kemungkinan. Jika diinput angka 17, cek apakah 17 habis dibagi 2. Jika tidak, lanjut apakah 17 habis dibagi 3, jika tidak cek lagi apakah 17 habis dibagi 4, dst.

Silahkan anda coba sebentar membuat kode program ini.


Kode Program Java Cek Bilangan Prima

Berikut salah satu solusi dari soal cek bilangan prima menggunakan bahasa pemrograman Java:

import java.util.Scanner;
  
class CekBilanganPrima {
  public static void main(String args[]){
           
    Scanner input = new Scanner(System.in);
      
    System.out.println("##  Program Java Cek Bilangan Prima  ##");
    System.out.println("=======================================");
    System.out.println();
    
    int n,i;
    boolean angka_prima = true;
    
    System.out.print("Input sebuah angka bulat: ");
    n = input.nextInt();
    
    // 0 dan 1 bukan angka prima
    if (n == 0 || n == 1) {
      angka_prima = false;
    }
    else {
      for (i = 2; i <= n / 2; i++) {
        if (n % i == 0) {
          angka_prima = false;
          break;
        }
      }
    } 
    
    if (angka_prima)
      System.out.println( n + " adalah angka prima");
    else
      System.out.println( n + " bukan angka prima");
  }
}
Agar bisa berjalan, simpan kode diatas ke dalam file CekBilanganPrima.java, lalu compile dengan perintah javac CekBilanganPrima.java dan jalankan (run) dengan perintah java CekBilanganPrima. Panduan lebih lengkap bisa ke Cara Menjalankan kode Program Java (Proses Compile).

Latihan Kode Program Java - Cara Cek Bilangan Prima

Dalam kode program ini variabel n akan menampung angka yang diinput oleh user. Proses pembacaan dilakukan di baris 16 dengan perintah n = input.nextInt().

Selain itu saya membuat sebuah flag atau penanda yang disimpan di dalam variabel angka_prima. Variabel angka_prima bertipe boolean sehingga hanya bisa diisi dengan nilai true atau false.

Pada saat proses deklarasi, variabel angka_prima langsung diisi boolean true. Variabel ini akan jadi penentu apakah sebuah angka merupakan bilangan prima atau tidak.

Proses pemeriksaan pertama ada di baris 19. Jika angka yang diinput user adalah 0 atau 1, maka langsung isi angka_prima dengan false. Karena dalam matematika, 0 dan 1 tidak dianggap sebagai angka prima.

Jika angka yang diinput bukan 0 atau 1, maka masuk ke blok else yang berisi perulangan for antara baris 23 – 28.

Perulangan for ini mulai dari 2 hingga n / 2. Dalam setiap iterasi, cek apakah n habis dibagi dengan i melalui perintah n % i == 0. Jika kondisi ini terpenuhi, update isi variabel angka_prima menjadi false dan langsung hentikan perulangan.

Perulangan hanya perlu dilakukan sampai n / 2 karena secara logika kita tidak perlu cek pembagian dengan setiap angka.

Setelah perulangan selesai, cek kembali isi variabel angka_prima. Jika berisi boolean true, yakni if (angka_prima), maka n adalah angka prima. Jika tidak, maka n bukanlah angka prima.


Kode Program Cek Bilangan Prima Java Dengan Alasan

Untuk bonus soal, kita bisa menambah satu variabel ke dalam perulangan for untuk menampung angka yang membuat perulangan itu berhenti. Angka inilah yang menjadi alasan kenapa sebuah bilangan bukan bilangan prima.

Berikut modifikasi yang diperlukan:

import java.util.Scanner;
  
class CekBilanganPrima {
  public static void main(String args[]){
           
    Scanner input = new Scanner(System.in);
      
    System.out.println("##  Program Java Cek Bilangan Prima  ##");
    System.out.println("=======================================");
    System.out.println();
    
    int n,i,pembagi=0;
    boolean angka_prima = true;
    
    System.out.print("Input sebuah angka bulat: ");
    n = input.nextInt();
    
    // 0 dan 1 bukan angka prima
    if (n == 0 || n == 1) {
      angka_prima = false;
    }
    else {
      for (i = 2; i <= n / 2; i++) {
        if (n % i == 0) {
          pembagi = i;
          angka_prima = false;
          break;
        }
      }
    } 
    
    if (angka_prima)
      System.out.println( n + " adalah angka prima");
    else
      System.out.println( n + " bukan angka prima karena bisa dibagi "
                         +pembagi);
  }
}

Latihan Kode Program Java - Cara Cek Bilangan Prima dengan Pembagi

Penambahan ada di baris 12, 25 dan 35. Variabel pembagi dipakai untuk menampung angka i saat perulangan berhenti.


Demikian kode program cek bilangan prima menggunakan bahasa pemrograman Java. Seperti yang terlihat, logika dan sedikit teori matematis sangat berperan untuk mencari solusi kode program. Semoga tutorial ini bisa bermanfaat.

Add Comment