Langsung ke konten utama

Program Perulangan - Looping in Java Program

Perulangan (Looping) adalah suatu blok kode program berdasar kondisi yang ditentukan hingga tercapai kondisi untuk menghentikannya (terminasi).
Setiap perulangan memiliki bagian, yaitu :
  1.  Inisialisasi adalah statement yang menyatakan keadaan awal sebuah perulangan.
  2.  Body  atau badan program adalah blok statement yang akan dijalankan terus-menerus selama perulangan berlangsung.
  3.  Iterasi adalah bagian program yang nilainya terus berubah (ascending, descending, etc) untuk mencapai batas atau keadaan untuk berhenti.
  4. Terminasi adalah statement yang bernilai boolean yang menyatakan batas atau keadaan untuk menghentikan perulangan.
Sumber : tutorialPoint
Perulangan secara umum digambarkan menggunakan flowchart seperti gambar di atas. Pertama diperiksa nilai kondisi, apabila kondisi bernilai true maka perulangan akan dilakukan/dieksekusi dan bagian body dan iterasi akan dijalankan/dieksekusi. Setelah itu kembali dicek bagian kondisi, seterusnya hingga kondisi bernilai false. Apabila kondisi bernilai false maka perulangan berhenti dilakukan.

Macam-macam Perulangan pada Java


Pada Java dikenal tiga macam bentuk perulangan, yaitu while, do-while, dan for. Pada dasarnya semua perulangan di dalam Java memiliki cara kerja yang sama, selama kondisi masih bernilai true maka perulangan akan terus dieksekusi hingga kondisi bernilai false.

1. Perulangan For

Bentuk perulangan ini adalah perulangan yang paling umum digunakan untuk perulangan yang batasnya diketahui/jelas. Bentuk umum sintaks for:

For (inisialisasi; kondisi; iterasi){
            //body
}


contoh:
public static void main (String[] args){
     int n = 99;
     for (int i=0; i<n; i++){
           System.out.println(i);
     }
}
 Program di atas akan menampilkan n buah bilangan mulai dari 0 sampai n-1, n tidak akan ditamoilkan karena kondisi menyatakan i<n bukan i<=n.

2. Perulangan While

Bentuk umum perulangan while:
Inisialisasi;
While(kondisi){
      //body
      Iterasi; // opsional
}

Perulangan ini lebih sederhana daripada perulangan for, dari segi struktur sintaks dan lebih fleksibel. Sehingga perulangan ini cocok untuk perulangan yang perulangannya tidak memiliki batas pasti. Contohnya program yang memeriksa password user untuk login, perulangan akan terus dilakukan ketika password yang di-input tidal sesuai dengan password yang disimpan.

Contoh:
public static void main (String[] args){
     int n = 19;
     int i = 0;
     while(i<n){
           System.out.println(i);
           I++;
     }
}
 Program di atas akan menampilkan n buah bilangan mulai dari 0 sampai n-1, n tidak akan ditamoilkan karena kondisi menyatakan i<n bukan i<=n.

3. Perulangng dapat digunakan h yaan Do-While

Bentuk umum perulangan do-while
Inisialisasi;
do{
    //body
    Iterasi; //opsional
} while(kondisi);

Cara kerja perulangan ini tidak jauh berbeda dengan perulangan while. Yang jadi pembeda adalah pada perulangan ini, bagian body (semua di dalam kurung kurawal setelah "do") dijalankan terlebih dahulu sebelum pengecekan kondisi. Sehingga walaupun kondisi dari awal bernilai false, bagian body tetap dijalankan satu kali. Berbeda dengan perulangan while apabila kondisi di awal bernilai false maka bagian body tidak akan dijalankan.

Jump Statement

Java mengenal tiga buah perintah untuk memindahkan alur program ke bagian lain dari program, yaitu break, continue, dan return. Perintah ini biasa disebut jump statement.

1. Break

Break Statement merupakan perintah yang dapat digunakan untuk menghentikan proses perulangan secara paksa. Berikut ini contoh penggunaan break dalam perulangan while, program akan berhenti paksa ketika nilai i = 9.

int n = 11;
int i = 1;
while(i<n){
    System.out.println(i);
    i++;
    if(i==9){
        break;
    }
}
 Program di atas akan menampilkan bilangan dari 1 sampai 8. Pada saat nilai i=9 perulangan akan dihentikan secara paksa.

2. Continue

Perintah continue adalah perintah yang dapat digunakan untuk melompati proses perulangan. Perintah continue berbeda debgan perintah break yang menghentikan proses perulangan, namun continue hanya akan melompati proses perulangan dan proses perulangan masih teteap berjalan.

contoh:
for (int i=0; i<13; i++){
     if(i==5){
         continue;
     }
     System.out.println(i);
}
 Program di atas akan menampilkan bilangan mulai dari 0 sampai 12, tetapi angka 5 tidak akan ditampilkan karena ketika i=5, maka erintah continue akan dijalankan.

3. Return

Perintah return adalah perintah dalam Java yang digunakan di dalam method. Method dipanggil oleh bagian lain dari program dan dengan perintah return, alur eksekusi dikembalikan ke bagian dari program yang memanggil method tersebut.


Perbedaan Penggunaan Break dan Continue pada Perulangan

Break statement adalah perintah yang dapat digunakan untuk menghentikan proses perulangan secara paksa. Sedangkan perintah continue adalah perintah yang dapat digunakan untuk melompati proses perulangan. Fungsi continue digunakan untuk mengabaikan lalu melanjutkan suatu pernyataan pada perulangan. Keyword break dan continue biasa digunakan bersamaan dengan control flow, seperti if else dan switch case di dalam program Java.

Soal Latihan

Natalia memiliki uang sebanyak Rp x (x>1000) dalam bentuk e-money. Dia ingin mengetahui berapa lembar paling sedikit yang dia miliki jika semua uangnya dalam bentuk kertas Rupiah (Rp 100.000, Rp 50.000; Rp 20.000, Rp 10.000, Rp 5.000, dan Rp 1.000) dengan menghiraukan pecahan uang yang kurang dari Rp 1.000. Buatlah program untuk membantu Natalia menghitung berapa lembar uang kertas paling sedikit yang dapat dia miliki.

Format Input
Sebuah integer yang dinyatakan x (banyaknya uang Natalia dalam bentuk e-money) dengan x>1000

Format Output
Pada baris pertama tampilkan "Natalia memiliki n lembar uang kertas" dengan n adalah banyaknya uang kertas yang dapat Natalia miiki. Kemudian 7 baris berikutnya tampilkan rincian uang kertas yang dapat dia miliki secara berurut dari p lembar uang Rp 100.000 sampai q lembar uang Rp 1.000.



Tugas Praktikum

  • Buatlah sebuah program untuk mengonversi Arabic number ke Romawi number. Program menerima sebuah inputan b(integer) dengan 0<=b<1000) kemudian menampilkan hasil dalam angka romawi(Uppercase).
Format Input
Program menerima sebuah inputan dengan tipe data integer yang mneyatakan b (0<=b<1000).

Format Output
Tampilkan nilai b dalam angka romawi (Uppercase).

Contoh input dan output

  • Input bilangan bulat n dan m. Kemudian berdasarkan nilai m, print masing-masing satu kata dari 2 kelompok kata tersebut sebanyak (selisih n dan m) kali berdasarkan kondisi yang ada.
Kata Pertama
     m>0 : "positif"
     m=0 : "nol"
     m<0 : "negatif"

Kata Kedua
     m genap : "genap"
     m ganjil : "ganjil"

Jika m nol, maka tidak perlu diprint "genap" ataupun "ganjil".
Jika (selisih n dan m) adalah nol, maka print sebanyak satu kali.

Format Input
Dua buah bilangan bulat n dan m yang dipisah oleh spasi.

Format Output
Setiap baris terdiri dari dua kata yang dipisahkan ileh spasi (jika m=0, maka setiap baris hanya terdapat 1 kata), kata-kata tersebut telah dijelaskan di atas.
Contoh input output



Sumber: Modul Lab Rekayasa Perangkat Lunak, Pengantar Pemrograman, Ilmu Komputer FMIPA, Universitas Hasanuddin

Komentar