Operator Kondisi If-Else Dan Switch Case Dalam Java
- Pernyataan IF
Artinya jika kondisi memenuhi syarat, maka perintah akan dikerjakan dan sebaliknya, jika kondisi salah, maka perintah akan diabaikan.
Pernyataan IF ada beberapa macam
a. If tunggal
Pernyataan yang hanya terdiri dari satu kondisi dan dua pernyataan
b. If majemuk
Pernyataan yang terdiri dari beberapa kondisi dan beberapa pernyataan
c. Nested if (If bersarang)
Yaitu tedapat kondisi lain di dalam kondisi ( If di dalam if)
Bentuk umum :
If (kondisi){
Pernyataan;
………….;
}
Contoh Program :
import java.util.*;
class HitungNilai {
public static void main(String[] args) {
String nama, hadiah;
int n1, n2, n3;
double rata2;
Scanner input = new Scanner(System.in);
System.out.println("PROGRAM HITUNG NILAI RATA-RATA");
System.out.print("Nama Siswa :");
nama = input.nextLine();
System.out.print("Masukan Nilai Pertandingan I :");
n1 = input.nextInt();
System.out.print("Masukan Nilai Pertandingan II :");
n2 = input.nextInt();
System.out.print("Masukan Nilai Pertandingan III :");
n3 = input.nextInt();
rata2 = (n1 + n2 + n3) / 3;
if(rata2 >= 85){
hadiah="Seperangkat Komputer P4";
}
else if(rata2 >= 70){
hadiah="Uang sebesar Rp. 500.000";
}
else{
hadiah="Mendapat hadiah hiburan";
}
System.out.println("Siswa yang bernama :" + nama);
System.out.println("Memperoleh nilai rata-rata : " + rata2 + "dari hasil perlombaan yang diikutinya");
System.out.println("Hadiah yang didapat adalah :" + hadiah);
}
}
Untuk penjelasan program saya rasa sudah sering saya jelaskan sebelumnya, tinggal di amati saja code programnya, tentunya untuk pernyataan if ini sudah tidak asing lagi bagi anda semua…
Contog Lain :
import java.util.*;
class NilaiKursus {
public static void main(String[] args) {
String nama,grade;
int nk,nt,nu,na;
Scanner input = new Scanner(System.in);
System.out.println("PROGRAM HITUNG NILAI AKHIR");
System.out.print("Nama Siswa : ");
nama = input.nextLine();
System.out.print("Nilai Keaktifan :");
nk = input.nextInt();
System.out.print("Nilai Tugas :");
nt = input.nextInt();
System.out.print("Nilai Ujian :");
nu = input.nextInt();
nk=(nk*20)/100;
nt=(nt*30)/100;
nu=(nu*50)/100;
na = nk+nt+nu;
if(na>=80){
grade="A";
}else if(na>=70){
grade="B";
}else if(na>=59){
grade="C";
}else if(na>=50){
grade="D";
}else{
grade="E";
}
System.out.println("Siswa Yang Bernama :" + nama);
System.out.println("Dengan Nilai Presentasi Yang Dihasilkan.");
System.out.println("Nilai Keaktifan * 20% :" + nk);
System.out.println("Nilai Tugas * 30% :" + nt);
System.out.println("Nilai Ujian * 50% :" + nu);
System.out.println("Jadi Siswa Yang Bernama :" + nama +
"Memperoleh Nilai Akhir Sebesar :" + na);
System.out.println("Grade Nilai Yang Didapat Adalah : " + grade);
}
}
- Pernyataan Switch Case
Pernyataan Switch Case ini sama dengan pernyataan IF-Else namun pada pernyataan Switch Case ini hanya digunakan pada tipe data primitif yang bertipe integer.
Bentuk Umum :
Switch (ekspresi){
Case konst-1 :
Perintah…
Break;
Case konst-2 :
Perintah…
Break;
……………..
……………..
Default :
Perintah…
Contoh Program :
Pada contoh berikut ini menggunakan pernyataan If-Else dan Switch Case
import java.util.*;
class UpahHonor {
public static void main(String[] args) {
String nama, pend;
int gol, jamker,ht=300000;
double tunjP = 0, tunjJ,lmbr,total;
Scanner input = new Scanner(System.in);
System.out.println("Program Hitung Honor Karyawan Kontrak");
System.out.println("PT. DINGIN DAMAI");
System.out.print("Nama Karyawan :");
nama = input.nextLine();
System.out.print("Pendidikan [SMU|D3|S1] :");
pend = input.nextLine();
System.out.print("Golongan [1|2|3] :");
gol = input.nextInt();
System.out.print("Jumlah Jam Kerja :");
jamker = input.nextInt();
switch (gol) {
case 1:
tunjJ = (ht * 5) / 100;
if ("SMU".equals(pend)) {
tunjP = (ht * 2.5) / 100;
} else if ("D3".equals(pend)) {
tunjP = (ht * 5) / 100;
} else if ("S1".equals(pend)) {
tunjP = (300000 * 7.5) / 100;
} else {
tunjP = 0;
}
break;
case 2:
tunjJ = (ht * 10) / 100;
if ("SMU".equals(pend)) {
tunjP = (ht * 2.5) / 100;
} else if ("D3".equals(pend)) {
tunjP = (ht * 5) / 100;
} else if ("S1".equals(pend)) {
tunjP = (ht * 7.5) / 100;
} else {
tunjP = 0;
}
break;
case 3:
tunjJ = (ht * 15) / 100;
if ("SMU".equals(pend)) {
tunjP = (ht * 2.5) / 100;
} else if ("D3".equals(pend)) {
tunjP = (ht * 5) / 100;
} else if ("S1".equals(pend)) {
tunjP = (ht * 7.5) / 100;
} else {
tunjP = 0;
}
break;
default:
tunjJ = 0;
}
if(jamker>8){
lmbr=(jamker-8)*2500;
}else{
lmbr=0;
}
System.out.println("Karyawan Yang Bernama :" + nama);
System.out.println("Honor Yang Diterima");
System.out.println("Honor Tetap Rp. " + ht);
System.out.println("Tunjangan Jabatan Rp. " + tunjJ);
System.out.println("Tunjangan Pendidikan Rp. " + tunjP);
System.out.println("Honor Lembur Rp. " + lmbr);
System.out.println("--------------------------------------");
total=ht+tunjJ+tunjP+lmbr;
System.out.println("Honor Yang Diterima Rp. " + total);
}
}
Penjelasan Program :
if ("SMU".equals(pend)) {
code di atas ada code equals itu artinya untuk inputan keyboar, kalau untuk mengabaikan inputan huruf kecil dan besar, tinggal diganti dengan equalsIgnoreCase
Amati code program di atas secara teliti ya….
Contoh Lain :
import java.util.*;
class HitungTotal {
public static void main(String[] args) {
String kode, merek;
int ukuran;
long harga = 0, jumbel, total;
Scanner input = new Scanner(System.in);
System.out.println("TOKO KELONTONG KERONCOBGAN");
System.out.println("--------------------------");
System.out.println("A. Susu Dancow");
System.out.println(" 1. Ukuran Kecil");
System.out.println(" 2. Ukuran Sedang");
System.out.println(" 3. Ukuran Besar");
System.out.println("B. Susu Bendera");
System.out.println(" 1. Ukuran Kecil");
System.out.println(" 2. Ukuran Sedang");
System.out.println(" 3. Ukuran Besar");
System.out.println("C. Susu SGM");
System.out.println(" 1. Ukuran Kecil");
System.out.println(" 2. Ukuran Sedang");
System.out.println(" 3. Ukuran Besar");
System.out.print("Masukan Kode Susu [A|B|C] :");
kode = input.nextLine();
System.out.print("Masukan Ukuran Kaleng [1|2|3] :");
ukuran = input.nextInt();
if ("A".equals(kode)) {
merek = "Dancow";
switch (ukuran) {
case 1:
harga = 15000;
break;
case 2:
harga = 20000;
break;
case 3:
harga = 25000;
break;
default:
harga = 0;
}
} else if ("B".equals(kode)) {
merek = "Bendera";
switch (ukuran) {
case 1:
harga = 13500;
break;
case 2:
harga = 17500;
break;
case 3:
harga = 20000;
break;
default:
harga = 0;
}
} else if ("C".equals(kode)) {
merek = "SGM";
switch (ukuran) {
case 1:
harga = 15000;
break;
case 2:
harga = 18500;
break;
case 3:
harga = 22000;
break;
default:
harga = 0;
}
} else {
merek = "Tidak Ada";
}
System.out.println("Susu :" + merek);
System.out.println("Harga Satuan Barang :" + harga);
System.out.print("Jumlah Yang Dibeli :");
jumbel = input.nextInt();
total = jumbel * harga;
System.out.println("Harga Yang Harus Dibayar Sebesar Rp. " + total);
}
}
Amati lagi ya codenya dan di coba lalu di compile dan di jalankan, kemudian lihat hasilnya..!
Kembali Ke Beranda Blog