Dasar Pemrograman Java: Struktur Perulangan FOR

Perulangan FOR adalah salah satu loop yang paling umum digunakan dalam pemrograman Java. Gunanya adalah untuk mempermudah melakukan suatu proses berulang-ulang, terutama ketika jumlah pengulangan sudah diketahui pasti di awal. Dengan looping, kita dapat melakukan proses berulang dengan memori yang sedikit dan waktu yang singkat, alih-alih menggunakan script biasa yang memakan banyak memori.

1. Sintaks Dasar Perulangan FOR

Dalam perulangan FOR, tiga komponen utama dirangkai menjadi satu: inisialisasi, kondisi, dan update (penambahan/pengurangan).

Komponen Struktur

for (inisialisasi_variabel; kondisi_variabel; update_variabel) {
  // perintah atau statement yang diulang
}
  1. Inisialisasi Variabel: Menentukan nilai awal counter (penghitung), misalnya int i = 1.
  2. Kondisi Variabel: Ekspresi Boolean yang menentukan apakah loop harus terus berjalan, misalnya i <= 5.
  3. Update Variabel: Bagaimana counter diubah setelah setiap iterasi, misalnya i++ (bertambah 1).

Contoh Perulangan Naik (Increment)

Contoh ini menunjukkan loop yang berjalan dari 1 sampai 5, bertambah 1 setiap kali berulang.

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

Contoh Perulangan Mundur (Decrement)

Anda dapat membuat loop berjalan mundur dengan mengubah inisialisasi, kondisi, dan update variabel.

class for_mundur {
  public static void main (String [ ] args) {
    for (int i=5 ; i >= 0; i--) {
      System.out.println(i);
    }
  }
}
// Output: 5, 4, 3, 2, 1, 0 

2. Perulangan FOR Bersarang (Nested Loop)

Perulangan bersarang (nested loop) adalah perulangan FOR di dalam perulangan FOR lain. Konsep ini umum digunakan untuk membuat pola dua dimensi atau tabel.

Contoh 1: Membuat Pola Segitiga Angka

Perulangan luar (i) mengontrol baris, dan perulangan dalam (j) mengontrol kolom.

  • i (Baris): Berjalan dari 1 hingga 5.
  • j (Kolom): Berjalan dari 1 hingga i saat ini.
public class Contoh1 {
  public static void main(String[] args) {
    for (int i=1; i <=5; i++) { // Loop Luar (Baris)
      for (int j=1; j<=i;j++){ // Loop Dalam (Kolom)
        System.out.print(j+" ");
      }
      System.out.println(" "); // Pindah baris setelah loop dalam selesai
    }
  }
}

Hasil Output:

1 
1 2 
1 2 3 
1 2 3 4 
1 2 3 4 5

Contoh 2: Membuat Tabel Perkalian (12 x 12)

Nested loop sangat efektif untuk membuat data tabular. Di sini, nilai yang dicetak adalah hasil kali dari counter luar (i) dan counter dalam (j).

public class Tblkali {
  public static void main(String[] args) {
    for (int i=1; i<=12; i++) { // Baris (Angka pertama)
      for (int j=1; j<=12;j++){ // Kolom (Angka kedua)
        System.out.print (i*j+" "); // Cetak hasil kali
      }
      System.out.println(""); // Pindah baris
    }
  }
}

3. Implementasi Input dengan FOR Loop

Perulangan FOR dapat dengan mudah digabungkan dengan input Scanner untuk menentukan batas perulangan secara dinamis oleh pengguna.

Perulangan Tunggal Dinamis

Contoh ini meminta pengguna memasukkan batas akhir (a), lalu mencetak angka dari 1 sampai batas tersebut.

import java.util.Scanner;

class Ad {
  public static void main(String[] zx) {
    Scanner oke = new Scanner(System.in);
    System.out.print("Masukkan nilai pilihan anda : ");
    int a = oke.nextInt();
    
    for(int i=1; i<=a; i++) { // Batas loop ditentukan oleh 'a'
      System.out.println(i);
    }
  }
}

Nested Loop Dinamis

Anda juga dapat membuat pola bersarang di mana dimensi pola ditentukan saat runtime (program berjalan).

// ... [Deklarasi Scanner dan Input variabel 'a'] ...
for (int i=1 ; i <=a; i++) { // Loop Luar: Batasnya 'a'
  for (int j=1 ; j <=i; j++) { // Loop Dalam: Batasnya 'i'
    System.out.print(j+" ");
  }
  System.out.println(" ");
}