Tutorial Java Dasar 011 – Perulangan

Apa yang akan kita lakukan sekiranya berkeinginan memerintah komputer untuk menjalankan instruksi yang berulang-ulang?
Misalkan kita berkeinginan memerintah komputer memunculkan teks semarsoft.com sebanyak 5x.
Kita dapat menuliskan perintah berikut ini untuk memerintahnya :

System.out.println("semarsoft.com");
System.out.println("semarsoft.com ");
System.out.println("semarsoft.com ");
System.out.println("semarsoft.com ");
System.out.println("semarsoft.com ");

Namun… bagaiman jikalau perintahnya sebanyak 10000x, apakah kita menuliskan coding tersebut sebanyak itu, atau mungkin ada yang beranggapan dicopy paste saja biar cepat,

Tentunya tidak demikian, walaupun copy paste pun butuh waktu banyak untuk melakukannya

Oleh karena itu, kita harus menggunakan struktur perulangan

konsep perulangan

Berikut contoh perulangan untuk menampilkan text semarsoft.com :

for (int itung = 0; itung<= 10000; itung++) {
    System.out.println("semarsoft.com");
}

Dari contoh coding perulangan diatas, begitu simpel dan mudah bukan?

Namun sebelum kita membahas lebih dalam materi ini, alangkah baiknya kita mengetahui jenis perulangan terlebih dahulu

Jenis Perulangan

Di dalam pemrograman Perulangan dibagi manjadi dua jenis:

  1. Counted loop: Perulangan yang jumlah pengulangannya sudah ditentutan atau nilai perulangannya sudah diketahui
  2. Uncounted loop: Perulangan yang jumlah pengulangannya belum ditentukan atau nilainya belum diketahui.

Jenis Perulangan

Counted loop terdiri dari 2 perulangan yaitu perulangan For dan For each. Sedangkan untuk perulangan Uncounted loop terdiri dari perulangan While dan perulangan Do/While

1. Counted Loop

Seperti yang telah digambarkan, perulangan ini mempunyai jumlah pengulangan yang sudah diketahui dan terhitung.
Perulangan ini terdiri dari perulangan For dan For each.
Mari kita ulas satu per satu

Perulangan For

Amati dan fahami format penulisan perulangan For di dalam pemrograman java sebagai berikut:

for( int itung = 0; itung <= 10; itung++ ){
    // Are kode yang akan diulang
}

Penjelasan :
• variabel itung berfungsi untuk menyimpan jumlah hitungan pengulangan.
• itung <= 10 artinya selama nilai perhitungannya lebih kecil atau sama dengan 10, maka perulangannya akan terus dikerjakan. Dengan kata lain, pengulangan ini akan mengulang sebanyak 10 kali.
• itung++ merupakan fungsi increment yaitu untuk menambah satu (+1) nilai hitungan peda setiap pengulangan.
• Area kode For dimulai dengan tanda ‘{’ dan diakhiri dengan ‘}’.

Mari kita implementasikan perulangan tersebut didalam bahasa pemrograman Java
Contoh Program Perulangan For
Kalian buat class baru dengan nama Syaban, kemudian ketik kode berikut:

class Bintang{
    public static void main(String[] args){

        for(int i=0; i <= 5; i++){
            System.out.println("*****");
        }

    }
}

jika dijalankan hasilnya akan seperti ini

*****
*****
*****
*****
*****
*****

Sekarang coba kita buat program lagi untuk menampilkan deret bilangan dari angka 1 sampai 10 dengan menggunakan struktur perulangan.

class DeretBilangan{

    public static void main(String[] argumen){

        for(int x=0; x <= 10; x++){
            System.out.print( x + " " );
        }

    }

}

Jika dijalankan Outputnya akan tampil seperti beriku tini

0 1 2 3 4 5 6 7 8 9 10
Contoh Deret Bilangan Ganjil

Sekaran kita coba menampilkan deret Bilangan Ganjil dari angka 1 hingga 20

class BilanganGanjil{

    public static void main(String[] argumen){
        for(int x = 1; x <= 20; x += 2){
            System.out.print( x + " ");
        }
    }
}

sehingga jika dijalankan output seprti berikut ini:

1 3 5 7 9 11 13 15 17 19

Perhatikan: di sana kita menggunakan x += 2, bukan x++.

Maksudnya Apa ?

Maksudnya, nilai x akan ditambah dua (+2) di setiap perulangan dijalankan.

Perulangan For Each

Perulangan ini sebetulnya diaplikasikan untuk memperlihatkan isi dari array.

Apa itu array?

Sederhananya, array itu variabel yang menaruh lebih dari satu value dan mempunyai indeks., bisa dikatakan fungsinya seperti banyak variabel

Selengkapnya, nanti dapat di pelajari pada materi: Mengetahui Array di Java.

Berikutnya …..

Perulangan For Each pada Java, dikerjakan juga dengan kata kunci For.

Semisal seperti ini:

for ( int items : dataArray ) {
    // Area kode yang diulang
}

Penjelasan:

  • Variabel items akan menaruh value dari array
  • Kita dapat baca seperti ini: “Untuk tiap items dalam dataArray, maka lakukan perulangan”

Contoh Program For Each

Sekarang Buatlah sebuah class baru dengan nama BelajarForeach, kemudian ketik kode berikut.

public class BelajarForeach {
    public static void main(String[] args) {

        // membuat data array
        int bil[] = {3,1,42,24,12};

        // menggunakan perulangan For each untuk menampilkan bilangan
        for( int x : bil){
            System.out.print(x + " ");
        }

    }
}

Jika dijalankan outputnya seperti berikut ini

3 1 42 24 12

 

2. Uncounted Loop

Seperti yang telah diterangkan di permulaan tadi, nilai darii perulangan belum diketahui sebelumnya berapa kali harus melakukan pengulangan.

Namun, tak menutup kemungkinan juga, nilai dari pengulangannya bisa ditentukan.

Perulangan uncounted loop terdiri dari perulangan While dan Do/While.

konsep perulangan while dan perulangan dowhile

Mari kita ulas step by step

Perulangan While

While bisa diartikan selama.

Cara kerja dari konsep perulangan ini ialah seperti percabangan, perulangan while akan melakukan pengulangan selagi kondisinya bernilai benar/true.

Struktur penulisan perulangan while:

while ( kondisi ) {
    // area kode yang akan diulang
}

Penjelasan:

  • pada bagian kondisi dapat kita isi dengan perbandingan maupun nilai boolean. Kondisi ini hanya memiliki nilai benar/true dan salah/flase.
  • Perulangan while akan berhenti hingga bagian kondisi bernilai false.

Agar lebih memahaminya , mari kita implementasikan code program berikut ini

int x = 0;

while ( x <= 10 ){
    // area kode yang akan diulang
    System.out.println('Perulangan ke-' + x);

    // increment nilai i
    x++;
}

Jika dijalankan hasilnya seperti beriku tini

Hasil outputnya:
Perulangan ke-0
Perulangan ke-1
Perulangan ke-2
Perulangan ke-3
Perulangan ke-4
Perulangan ke-5
Perulangan ke-6
Perulangan ke-7
Perulangan ke-8
Perulangan ke-9
Perulangan ke-10

Contoh Program dengan Perulangan While

Program ini akan menjalankan perulangan selama jawabannya ditulis tidak.

import java.util.Scanner;
 
public class BelajarWhile {
    public static void main(String[] args) {
 
        // mendeklarasikan variabel dan scanner
        boolean jalan = true;
        int counter = 0;
        String jawab;
        Scanner scan = new Scanner(System.in);
 
        while(jalan) {
            System.out.println("Apakah anda ingin keluar rumah?");
            System.out.print("Jawab [ya/tidak]> ");
 
            jawab = scan.nextLine();
 
            // cek jawabnnya, kalau ditulis ya maka berhenti mengulang
            if( jawab.equalsIgnoreCase("ya") ){
                jalan = false;
            }
 
            counter++;
        }
 
        System.out.println("Anda sudah melakukan perulangan sebanyak " + counter + " kali");
 
    }
}

Coba Jalankan, dan amati hasilnya

Perulangan Do/While

Perulangan Do/While sebetulnya hampir sama seperti perulangan While, hanya saja Do/While melakukan cek kondisi pada perulangan pertamanya, lebih jelasnya amati gambar berikutflowchart perulangan do_while

jika di tulis dalam pemrograman java, struktur codingnya seperti ini

do {
    // kode yang di sini akan diulang
} while (kondisi);

di listing di atas (Do) akan dikerjakan dulu, kemudian melakukan cek kondisinya pada blok while( kondisi ). jika kondisi bernilai ture, maka perulangan akan dilanjutkan.

Contoh Program dengan Perulangan Do/While
public class DoWhile {
    public static void main(String[] args) {

        // deklarasi variabel
        int i = 0;

        do {
            System.out.println("perulangan yang ke-" + i);
            i++;
        } while ( i <= 10);

    }
}

jika dijalankan outputnya akan seperti ini

perulangan yang ke-0
perulangan yang ke-1
perulangan yang ke-2
perulangan yang ke-3
perulangan yang ke-4
perulangan yang ke-5
perulangan yang ke-6
perulangan yang ke-7
perulangan yang ke-8
perulangan yang ke-9
perulangan yang ke-10

Parulangan Bersarang (Nested Loop)

Sama halnya dengan percabangan, Perulangan juga ada yang bersarang. Apasih Perulangan bersarang itu?, perulangan yang ada di dalam perulangan atau kata lainnya adalah nested loop.

Perhatikan bentuk flow chart nasted loop berikutperulangan bersarang perulangan dalam perulangan

Contoh Program Perulangan Bersarang

public class NastedLoop{
    public static void main(String[] args) {

        // deklarasi variabel
        int x, y;

        // melakukan parulang sebanyak y dikali x
        for (x = 0; x <= 5; x++){
            for( y = 0; y <= 3; y++){
                System.out.format("Perulangan [x=%d, y=%d] %n", x, y);
            }
        }
    }
}

Jika dijalankan hasilnya akan seperti berikut ini

Perulangan [x=0, y=0]
Perulangan [x=0, y=1]
Perulangan [x=0, y=2]
Perulangan [x=0, y=3]
Perulangan [x=1, y=0]
Perulangan [x=1, y=1]
Perulangan [x=1, y=2]
Perulangan [x=1, y=3]
Perulangan [x=2, y=0]
Perulangan [x=2, y=1]
Perulangan [x=2, y=2]
Perulangan [x=2, y=3]
Perulangan [x=3, y=0]
Perulangan [x=3, y=1]
Perulangan [x=3, y=2]
Perulangan [x=3, y=3]
Perulangan [x=4, y=0]
Perulangan [x=4, y=1]
Perulangan [x=4, y=2]
Perulangan [x=4, y=3]
Perulangan [x=5, y=0]
Perulangan [x=5, y=1]
Perulangan [x=5, y=2]
Perulangan [x=5, y=3]

Jika kita amati outputnya, ini mirip dengan posisi index pada matrix di matemtika bukan?

 

Tambahan

  • Perulangan bersarang ini sangat sering digunakan pada array multi dimensi.
  • Jenis nasted loop ini ada sedikit perbedaan , contohnya di dalam perulangan while terdapat perulangan for.

Leave a Comment