Contoh Program dengan Method, Loop, Percabangan IF-ELSE pada JAVA

Assalamu’alaikum wr.wb, salam sejahtera untuk kita semua.

Sebelumnya kita telah melihat contoh program perulangan atau looping. Beberapa waktu yang lalu kita juga sempat membahas mengenai konsep OOP pada Java, dimana kita telah mengenal apa itu Object,Class dan Method. Pada kesempatan kali ini kita akan membuat program menggunakan method dengan menggabungkan perulangan / looping dan percabangan if-else didalam method tersebut.

Materi tentang Method dapat disimak dari postingan berikut, Pengertian dari Class, Object, dan Method Pada Java . Sedangkan untuk perulangan bisa dilihat dalam contoh berikut, Contoh Program Perulangan (Looping) pada JAVA. Untuk percabangan if-else, If , Else,Switch Conditional Bahasa Pemrograman JAVA

Pertama kita buat Java empty file terlebih dahulu :

1
2
3
4
5
6
7
8
9
10
11
12
public class Main {
 
    /**
     * @param args
     *            the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
 
    }
 
}
public class Main {

	/**
	 * @param args
	 *            the command line arguments
	 */
	public static void main(String[] args) {
		// TODO code application logic here

	}

}

Kemudian kita buat method-method yang nantinya akan dipanggil,

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
    public static void cetakBatas(int length) {
        for (int i = 0; i < length; i++) {
            System.out.print("-");
        }
    }
 
    public static void cetakUjung(int length) {
        for (int i = 0; i < length; i++) {
            if (i == 0 || i == length - 1) {
                System.out.print("|");
            } else {
                System.out.print(" ");
            }
        }
    }
 
    public static void cetakTeks(int length, String teks) {
 
        for (int i = 1; i <= length; i++) {
            if (i == 1 || i == length) {
                System.out.print("|");
            }else {
                int middle = ((length / 2) + 1) - (teks.length()/2);
 
                if (i == middle) {
                    System.out.print(teks);
                    i+=teks.length()-1;
                } else {
                    System.out.print(" ");
                }
 
            }
        }
    }
 
    public static void cetak(int height, int width, String teks) {
        for (int i = 1; i <= height; i++) {
            if (i == 1 || i == height) {
                cetakBatas(width);
            } else {
                int middle = (height / 2) + 1;
 
                if (i == middle) {
                    cetakTeks(width, teks);
                } else {
                    cetakUjung(width);
                }
            }
            System.out.println("");
        }
    }
    public static void cetakBatas(int length) {
		for (int i = 0; i < length; i++) {
			System.out.print("-");
		}
	}

	public static void cetakUjung(int length) {
		for (int i = 0; i < length; i++) {
			if (i == 0 || i == length - 1) {
				System.out.print("|");
			} else {
				System.out.print(" ");
			}
		}
	}

	public static void cetakTeks(int length, String teks) {

		for (int i = 1; i <= length; i++) {
			if (i == 1 || i == length) {
				System.out.print("|");
			}else {
				int middle = ((length / 2) + 1) - (teks.length()/2);

				if (i == middle) {
					System.out.print(teks);
					i+=teks.length()-1;
				} else {
					System.out.print(" ");
				}

			}
		}
	}

	public static void cetak(int height, int width, String teks) {
		for (int i = 1; i <= height; i++) {
			if (i == 1 || i == height) {
				cetakBatas(width);
			} else {
				int middle = (height / 2) + 1;

				if (i == middle) {
					cetakTeks(width, teks);
				} else {
					cetakUjung(width);
				}
			}
			System.out.println("");
		}
	}

Method cetakBatas berfungsi untuk menampilkan batas berupa garis horizontal, method ini memiliki parameter length yang berfungsi untuk menentukan banyaknya garis-garis horizontal yang akan dicetak.

Method cetakUjung berfungsi untuk menampilkan garis-garis vertikal disetiap sisi ujung kiri/awal & kanan/akhir. Method ini memiliki parameter length yang fungsinya untuk menyeimbangi garis vertikal dalam method cetakBatas sehingga nantinya garis vertikalhanya akan di cetak tegak lurus dengan garis horizontal pertama dan terakhir sehingga akan memberikan kesan kotak atau adanya frame dalam program yang akan kita jalankan.

Method cetakTeks berfungsi untuk menampilkan kata yang diinputkan oleh user melalui parameter untuk ditempatkan ditengah-tengah program. Terdapat parameter length juga untuk menentukan pada baris keberapa teks di tampilkan, hal ini berfungsi agar teks terkesan berada ditengah program.

Kemudian kita membuat method cetak yang memiliki 3 parameter, yaitu tinggi frame, lebar frame, dan tulisan yang akan kita tampilkan. Method ini merupakan method yang berhubungan langsung oleh user atau method interface untuk memanggil mehod-method lainnya yang sudah kita buat sebelumnya.

Setelah itu kita panggil method cetak dalam main[] method,

1
2
3
4
public static void main(String[] args) {
    // TODO code application logic here
    cetak(5, 11, "Utama");
}
public static void main(String[] args) {
	// TODO code application logic here
	cetak(5, 11, "Utama");
}

Kode diatas berarti kita akan memanggil method cetak pada saat program dijalankan dengan memberikan nilai parameter 5 untuk tinggi, 11 untuk lebar, dan kata ‘Utama’ sebagai teks yang akan ditampilkan nantinya.

Kemudian kita jalankan program di atas, sehingga kita akan memperoleh output seperti ini :

Capture

Contoh diatas merupakan penggabungan method, perulangan/looping serta percabangan if-else dalam bahasa pemograman Java. Program tersebut kita buat dengan dinamis, dengan kata lain user bisa memasukkan nilai tinggi dan lebar frame serta teks apapun untuk ditampilkan dan berada ditengah-tengah.

Semoga contoh diatas bisa memberikan pemahaman dan menambah ilmu kita dalam membuat program dengan bahasa Java. Selamat berlatih !

Print Friendly, PDF & Email

Leave a Reply

Your email address will not be published. Required fields are marked *