anjutan dari seri
Konsep Dasar Bahasa Java. Jika sebelumnya kita sudah membahas masalah percabangan kali ini saya akan membahas masalah:
- Fungsi Input Dasar
- Perulangan
Mungkin terlihat lebih sedikit namun sebenarnya ini cukup memusingkan. Kebetulan sedang mengajar salah satu siswa untuk persiapan mengikuti CompFest Competitive Programming yang diselenggarakan oleh Universitas Indonesia. Ya cukup membingungkan untuk tingkatannya dia. Tapi mungkin anda bisa mencobanya

1. Fungsi Input Dasar
Perhatikan kode berikut
public class luasPersegiPanjang{
public static void main(String[]args){
int panjang = 9, lebar = 7;
System.out.println("Program Menghitung Luas Persegi Panjang");
System.out.println("Luasnya adalah = "+(panjang*lebar));
}
}
Jika kita lihat bahwa program di atas untuk menghitung luas persegi panjang dengan nilai panjang dan lebar yang sudah di set sebelumnya (bersifat statis). Lalu bagaimana untuk merubah bersifat dinamis tanpa perlu memasukkan dari sisi kode? Jawabnya adalah kita menggunakan scanner. Berikut contohnya:
import java.util.Scanner;
public class luasPersegiPanjang{
public static void main(String[]args){
Scanner s = new Scanner(System.in);
int panjang,lebar;
System.out.println("Program Menghitung Luas Persegi Panjang");
System.out.print("Masukkan Panjang = "); panjang = s.nextInt();
System.out.print("Masukkan Lebar = "); lebar = s.nextInt();
System.out.println("Luas Persegi Panjang = "+(panjang*lebar));
}
}
Bagian yang perlu anda perhatikan adalah:
Baris ke-1 memuat perintah untuk memasukkan komponen scanner ke dalam kode yang kita buat.
Baris ke-4 merupakan deklarasi penggunaan scanner. Huruf s merupakan variabel.
Baris ke-7 dan ke-8 merupakan cara penggunaan dalam memasukkan nilai variabel dengan scanner. Jika variabel bertipe integer maka penulisannya adalah nextInt() namun untuk float penulisannya nextFloat() sedangkan String cukup next() saja.
2. Perulangan
Perintah ini dilakukan untuk melakukan perintah lain pada batasan tertentu. Sebagai contoh jika ingin membuat suatu penomoran otomatis apakah kita akan mengetikkan System.out.println(“Nomor ke-xxx”) sebanyak yang diinginkan? Tentu itu melelahkan. Namun pada penggunaan perulangan hanya cukup dengan beberapa baris hal itu bisa dilakukan dengan mudah. Pada Java sendiri yang umum digunakan yakni:
- Perulangan for
- Perulangan while
- Perulangan do while
Berikut contoh penggunaan for
public class contohFor{
public static void main(String[] args){
for(int i=0; i<5; i++){
System.out.println("Margatekno Java Programming");
}
}
}
Penjelasannya cukup pada baris ke-3 yakni penggunaan for biasanya terdiri dari 3 komponen, angka yang pertama dimulai (dalam contoh yakni 0 dengan variabel i), lalu yang kedua adalah batasan penggunaan for (kasusnya sama seperti if, pada contoh jika i tidak kurang dari 5 maka perintah perulangan berhenti), dan yang ketiga yakni variabel i akan ditambah 1 (note: i++ sama saja dengan i = i+1). Berdasarkan perintah perulangan tersebut maka akan dicetak “Margatekno Java Programming” sebanyak 5 kali.
Untuk penggunaan while contoh kode nya adalah sebagai berikut
public class contohWhile{
public static void main(String[] args){
int i=0;
while (i<10){
System.out.println("Margatekno Java Programming");
i++;
}
}
}
Sama halnya dengan if, hanya saja jika if akan melakukan perintah sekali saja, untuk while akan dilakukan terus hingga kondisi tidak terpenuhi. Maka dari itu ada perintah i++ karena jika tidak akan menjadi perintah perulangan yang tidak berujung (anda bisa buktikan sendiri untuk mencoba menghapus baris ke-6). Pada contoh di atas maka akan mencetak sebanyak 10x.
Untuk perintah do while perhatikan kode berikut
public class contohDoWhile{
public static void main(String[] args){
int i=0;
do{
System.out.println("Margatekno Java Programming");
i++;
}
while (i<10);
}
}
Pada kode di atas akan menghasilkan output yang sama dengan while yakni 10x mencetak kalimat “Margatekno Java Programming”. Namun bedanya dengan while yakni perintah do while paling tidak akan menjalankan minimal 1x perulangan.

Jika anda sudah mengerti penggunaan dari ketiga perulangan di atas, maka kini saya mencoba untuk mengenalkan tentang perulangan di dalam perulangan (ini yang membuat siswa saya stress)

mari lihat contoh berikut:
public class forNested{
public static void main(String[] args){
for (int baris=0; baris<5; baris++){
for (int kolom=0; kolom<5; kolom++){
System.out.print("*");
}
System.out.println("");
}
}
}
Jadi untuk kode di atas tiap-tiap kolom akan melakukan perulangan sebanyak baris. Jika dijalankan maka akan menghasilkan seperti ini
*****
*****
*****
*****
*****
Lalu mari kita ubah sedikit kodenya untuk menghasilkan sesuatu yang unik hingga menjadi seperti ini
* *
* *
*
* *
* *
berikut kodenya
public class forNested{
public static void main(String[] args){
for (int baris=0; baris<5; baris++){
for (int kolom=0; kolom<5; kolom++){
if (baris==kolom || baris+kolom==4){
System.out.print("*");
} else{
System.out.print(" ");
}
}
System.out.println("");
}
}
}
Mungkin anda bisa mencoba variasi lain. Mungkin juga ada yang bertanya-tanya mengapa harus belajar ini? Ini untuk mengasah sejauh mana logika yang anda pahami. Bahkan pernah saya membaca artikel suatu blog yang menyebutkan bahwa ini juga menjadi soal yang diujikan untuk masuk ke STT Telkom. Tertarik? Selamat mengasah otak anda.
