BAB 2 - Pemrograman Dasar : SELEKSI KONDISI

Share:

A.  DEFINISI MASALAH

1.    Buatlah program sebagai berikut dengan menggunakan metode switch case Menu :

1. menghitung luas dan keliling persegi panjang
2. menghitung luas dan keliling lingkaran
3. menghitung luas dan keliling segitiga

Pilihan anda          : 3
Masukkan a           : 3
Masukkan b           : 4
Masukkan r           : 5


Keliling segitiga     : 12 cm
Luas segitiga          : 6 cm2


Pilihan anda          : 10
Data tak ditemukan, program dihentikan ...



2.    Untuk menentukan kriteria kegemukan, digunakan IMT (Indeks Massa Tubuh), yang bias dihitung menggunakan rumus :
IMT = b / t2
b = berat badan (kg)
t = tinggi badan (m)
Kriteria untuk nilai IMT ditabelkan sebagai berikut :



Nilai IMT
Kriteria
IMT ≤ 18,5
Kurus
18,5 < IMT ≤ 25
Normal
25 < IMT ≤ 30
Gemuk
IMT > 30
Kegemukan



Susun program dengan tampilan sebagai berikut dengan menggunakan metode if-else!

Berat badan (kg)         : 45
Tinggi badan (m)        :1.72
IMT = 15,21                         Termasuk kurus


Berat badan (kg)         : 85
Tinggi badan (m)        :1.71
IMT = 29,08                         Termasuk gemuk



3.    Susun program untuk masalah pengajian sebagai berikut :

Masukan yang dibutuhkan oleh program adalah : jumlah jam kerja tiap minggu.Keluaran program adalah : total upah dari pegawai tertentu. Aturan yang diterapkan adalah :

-            Batas kerja maksimal adalah 60 jam / minggu, dengan upah Rp. 5000,- / jam. Kelebihan jam kerja dari batas maksimum akan dianggap sebagai lembur dengan upah Rp. 6000,- /jam.

-            Batas kerja minimal adalah 50 jam / minggu. Apabila pegawai mempunyai jam kerja di bawah batas kerja minimal ini, maka akan dikenakan denda sebesar Rp. 1000,- / jam.

Contoh tampilan :



Jam kerja : 55
Upah              = Rp. 275000
Lembur          = Rp. 0
Denda            = Rp. 0
---------------------
Total              = Rp. 275000


Jam kerja : 70
Upah              = Rp. 300000
Lembur          = Rp. 60000
Denda            = Rp. 0
---------------------
Total              = Rp. 360000


Jam kerja : 40
Upah              = Rp. 200000
Lembur          = Rp. 0
Denda            = Rp. 10000
---------------------
Total              = Rp. 190000







A.  SOURCE CODE




Tugas Praktikum 2.1
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
52
package Praktikum2;
import java.util.Scanner;
public class Tugas1 {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        System.out.println("Menu : ");
        System.out.println("1. menghitung luas dan keliling persegi panjang");
        System.out.println("2. menghitung luas dan keliling lingkaran");
        System.out.println("3. menghitung luas dan keliling segitiga");
        System.out.print("Masukkan pilihan : ");
        int pilihan = input.nextInt();
        float luas, keliling;
        switch(pilihan){
            case 1 :
System.out.println("Menghitung Luas dan Keliling Persegi Panjang");
                System.out.print("Masukkan panjang : ");
                float panjang = input.nextInt();
                System.out.print("Masukkan Lebar   : ");
                float lebar = input.nextInt();
                luas = panjang*lebar;
                keliling = 2*(panjang+lebar);
                System.out.printf("Luas Persegi Panjang     : %.0f cm",luas);
                System.out.printf("\nKeliling Persegi Panjang : %.0f cm2 \n",keliling);
            break;
            case 2 :
                System.out.println("Menghitung Luas dan Keliling Lingkaran");
                System.out.print("Masukkan Jari-jari : ");
                float radius = input.nextFloat();
                float phi = (float) 3.14;
                luas = phi*radius*radius;
                keliling = 2*phi*radius;
                System.out.printf("Luas Lingkaran     : %.1f cm",luas);
                System.out.printf("\nKeliling Lingkaran : %.1f cm2\n",keliling);
            break;
            case 3 :
                System.out.println("Menghitung Luas dan Keliling Segitiga");
                System.out.print("Masukkan alas          : ");
                float alas = input.nextFloat();
                System.out.print("Masukkan tinggi        : ");
                float tinggi = input.nextFloat();
                System.out.print("Masukkan Sisi miring   : ");
                float sm = input.nextInt();
                luas = (float) (0.5*(alas*tinggi));
                keliling = alas+tinggi+sm;
                System.out.printf("Luas Segitiga     : %.0f cm\n",luas);
                System.out.printf("Keliling Segitiga : %.0f cm2\n",keliling);
            break;
            default :
                System.out.println("Data tak ditemukan, program dihentikan ...");
        }
    }
}




Tugas Praktikum 2.2
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
package Praktikum2;
import java.util.Scanner;
public class Tugas2 {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        System.out.println("Index Massa Tubuh (IMT)");
        System.out.print("Berat Badan (kg) : ");
        float berat = input.nextFloat();
        System.out.print("Tinggi Badan (m) : ");
        float tinggi = input.nextFloat();
        float imt = berat / (tinggi*tinggi);
        if (imt <= 18.5){
            System.out.printf("IMT  = %.2f \t Termasuk Kurus\n",imt);
        }
        else if(imt > 18.5 && imt <= 25){
            System.out.printf("IMT  = %.2f \t Termasuk Normal\n",imt);
        }
        else if(imt > 25 && imt <= 30){
            System.out.printf("IMT  = %.2f \t Termasuk Gemuk\n",imt);
        }
        else if(imt > 30){
            System.out.printf("IMT  = %.2f \t Termasuk Kegemukan\n",imt);
        }
    }
}






Tugas Praktikum 2.3
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
package Praktikum2;
import java.util.Scanner;
public class Tugas3 {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        System.out.print("Jam Kerja : ");
        int jamkerja = input.nextInt();
        int max = 60;
        int min = 50;
        int jam, upah ,lembur ,denda ,total;
        upah=0; lembur=0; denda=0;
        if (jamkerja>max){
            jam = jamkerja - max;
            upah = max*5000;
            lembur = jam*6000;
        }
        else if (jamkerja>=min && jamkerja<=max){
            upah = jamkerja*5000;
        }
        else if (jamkerja<min){
            jam = min - jamkerja;
            denda = jam*1000;
            upah = jamkerja*5000;
        }
        total = upah+lembur-denda;
        System.out.println("Upah   = Rp. "+upah);
        System.out.println("Lembur = Rp. "+lembur);
        System.out.println("Denda  = Rp. "+denda);
        System.out.println("---------------------");
        System.out.println("Total  : Rp. "+total);
    }
}





B.  PEMBAHASAN




Tugas Praktikum 2.1
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
52
Deklarasi dari package yang bernama Praktikum2.
Melakukan import dari package Scanner, untuk menggunakan fungsi scanner pada program.
Deklarasi dari class yang bernama Tugas1.
Deklarasi dari method/fungsi main, untuk menjalankan program.
Deklarasi variabel Scanner dengan nama variabel input.
Menampilkan “Menu :  “.
Menampilkan pilihan ke “1. menghitung luas dan keliling persegi panjang”.
Menampilkan pilihan ke “2. menghitung luas dan keliling lingkaran”.
Menampilkan pilihan ke “3. menghitung luas dan keliling segitiga”.
Menampilkan perintah untuk memasukan nilai ke variabel pilihan berdasarkan opsi yang telah di berikan di atas.
Melakukan proses penyimpanan nilai yang telah di masukkan ke variabel pilihan.
Deklarsi dari dua  variabel yang bertipe data float yang bernama luas dan keliling.
Memilih tindakan yang akan dijalankan sesuai dengan input yang dimasukkan pada variabel pilihan.
Menjalankan perintah yang ada pada kondisi 1 apabila nilai dari variabel pilihan sama dengan 1.
Menampilkan “Menghitung Luas dan Keliling Persegi Panjang”.
Menampilkan perintah untuk memasukkan nilai ke variabel panjang.
Melakukan proses penyimpanan nilai yang telah di masukkan ke variabel panjang.
Menampilkan perintah untuk memasukan nilai ke variabel lebar.
Melakukan proses penyimpanan nilai yang telah di masukkan ke variabel lebar.
Melakukan proses perkalian antara variabel panjang dan lebar(sesuai rumus luas persegi panjang) yang disimpan pada varibel luas.
Melakukan proses penghitungan variabel panjang ditambah lebar lalu di kalikan dua(sesuai rumus keliling persegi panjang) yang di simpan pada variabel keliling.
Menampilkan nilai dari variabel luas. Di mana %.0f digunakan untuk menampilkan tipe data yang berbentuk float dan menghilangkan nilai koma di belakangnya.
Menampilkan nilai dari variabel keliling.
Digunakan untuk menghentikan proses yang terjadi apabila perintah untuk eksekusi telah dilaksanakan atau batasan dari masing-masing kondisi.
Menjalankan perintah yang ada pada kondisi 2 apabila nilai dari variabel pilihan sama dengan 2.
Menampilkan “Menghitung Luas dan Keliling Lingkaran”.
Menampilkan perintah untuk memasukkan nilai ke variabel radius.
Melakukan proses penyimpanan nilai yang telah di masukkan ke variabel radius.
Deklarasi dari variabel yang bernama phi yang bertipe data float yang di inisialisasi dengan nilai 3,14.
Melakukan proses penghitungan variabel phi dikalikan radius pangkat dua(sesuai rumus luas lingkaran), yang di simpan pada variabel luas.
Melakukan proses perhitungan dua dikali phi dikali radius(sesuai rumus keliling lingkaran), yang di simpan pada variabel keliling.
Menampilkan nilai dari variabel luas. Di mana %.1f digunakan untuk menampilkan tipe data yang berbentuk float dan menampilkan 1 digit nilai koma di belakangnya.
Menampilkan nilai dari variabel keliling.
Digunakan untuk menghentikan proses yang terjadi apabila perintah untuk eksekusi telah dilaksanakan atau batasan dari masing-masing kondisi.
Menjalankan perintah yang ada pada kondisi 3 apabila nilai dari variabel pilihan sama dengan 3.
Menampilkan “Menghitung Luas dan Keliling Segitiga”.
Menampilkan perintah untuk memasukkan nilai ke variabel alas.
Melakukan proses penyimpanan nilai yang telah di masukkan ke variabel alas.
Menampilkan perintah untuk memasukkan nilai ke variabel tinggi.
Melakukan proses penyimpanan nilai yang telah di masukkan ke variabel tinggi.
Menampilkan perintah untuk memasukkan nilai ke variabel sm.
Melakukan proses penyimpanan nilai yang telah di masukkan ke variabel sm.
Melakukan proses penghitungan variabel  alas dikalikan tinggi dibagi 0,5(sesuai rumus luas Segitiga), yang disimpan pada variabel luas.
Melakukan proses perhitungan variabel alas ditambah tinggi ditambah sm, yang di simpan pada variabel keliling.
Menampilkan nilai dari variabel luas. Di mana %.0f digunakan untuk menampilkan tipe data yang berbentuk float dan menghilangkan nilai koma di belakangnya.
Menampilkan nilai dari variabel keliling.
Digunakan untuk menghentikan proses yang terjadi apabila perintah untuk eksekusi telah dilaksanakan atau batasan dari masing-masing kondisi.
Jika pilihan yang dimasukkan tidak ada yang memenuhi kriteria dari masing-masing kondisi maka statement yang berada pada default akan diproses.
Menampilkan “Data tak ditemukan, program dihentikan ...”.
Menutup kondisi fungsi switch-case.
Menutup deklarasi methode main.
Menutup deklarasi class Tugas1.




Tugas Praktikum 2.2
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
Deklarasi dari package yang bernama Praktikum2.
Melakukan import dari package Scanner, untuk menggunakan fungsi scanner pada program.
Deklarasi dari class yang bernama Tugas2.
Deklarasi dari method/fungsi main, untuk menjalankan program.
Deklarasi variabel Scanner dengan nama variabel input.
Menampilkan “Index Massa Tubuh (IMT)”.
Menampilkan perintah untuk memasukkan nilai ke variabel berat.
Melakukan proses penyimpanan nilai yang telah di masukkan ke variabel berat.
Menampilkan perintah untuk memasukkan nilai ke variabel tinggi.
Melakukan proses penyimpanan nilai yang telah di masukkan ke variabel tinggi.
Melakukan penghitungan variabel berat dibagi tinggi pangkat dua, yang di simpan pada variabel imt.
Jika kondisi imt kurang dari sama dengan 18,5.
Maka akan mencetak nilai dari variabel imt dan keterangan “Termasuk Kurus”.
Menutup kondisi atau akhir statement kondisi.
Jika kondisi imt lebi besar dari 18,5 dan imt kurang dari sama dengan 25.
Maka akan mencetak nilai dari variabel imt dan keterangan “Termasuk Normal”.
Menutup kondisi atau akhir statement kondisi.
Jika kondisi imt lebi besar dari 25 dan imt kurang dari sama dengan 30.
Maka akan mencetak nilai dari variabel imt dan keterangan “Termasuk Gemuk”.
Menutup kondisi atau akhir statement kondisi.
Jika kondisi imt lebih besar dari 30.
Maka akan mencetak nilai dari variabel imt dan keterangan “Termasuk Kegemukan”.
Menutup kondisi atau akhir statement kondisi.
Menutup deklarasi methode main.
Menutup deklarasi class Tugas2.




Tugas Praktikum 2.3
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
Deklarasi dari package yang bernama Praktikum2.
Melakukan import dari package Scanner, untuk menggunakan fungsi scanner pada program.
Deklarasi dari class yang bernama Tugas2.
Deklarasi dari method/fungsi main, untuk menjalankan program.
Deklarasi variabel Scanner dengan nama variabel input.
Menampilkan perintah untuk memasukkan nilai ke variabel jamkerja.
Melakukan proses penyimpanan nilai yang telah di masukkan ke variabel jamkerja.
Deklarasi dan inisialisasi variabel yang bernama max yang bertipe integer dimana nilai dari variabel ini adalah batas jam kerja maksimal(60 jam) selama seminggu.
Deklarasi dan inisialisasi variabel yang bernama min yang bertipe integer dimana nilai dari variabel ini adalah batas jam kerja minimal(50 jam) selama seminggu.
Deklarasi lima variabel yang bertipe integer yang bernama jam, upah, lembur, denda dan total.
Inisialisasi variabel upah, lembur dan denda dengan nilai awal sama dengan 0.
Jika kondisi jamkerja lebih besar dari max, maka
Melakukan proses penghitungan variabel jam sama dengan jamkerja dikurangi max.
Melakukan proses penghitungan variabel upah sama dengan max dikali 5000(upah per jamnya).
Melakukan proses penghitungan variabel lembur sama dengan jam dikali 6000(upah lembur per jamnya).
Menutup kondisi atau akhir statement kondisi.
Jika kondisi jamkerja lebih besar dari sama dengan min dan jamkerja kurang dari sama dengan max, maka
Melakukan proses penghitungan upah sama dengan jamkerja dikali 5000(upah per jamnya).
Menutup kondisi atau akhir statement kondisi.
Jika kondisi jamkerja kurang dari min, maka
Melakukan proses penghitungan variabel jam sama dengan min dikurangi jamkerja.
Melakukan proses penghitungan variabel denda sama dengan jam dikali 1000(denda per jamnya).
Melakukan proses penghitungan variabel upah sama dengan jamkerja dikali 5000(upah per jamnya).
Menutup kondisi atau akhir statement kondisi.
Melakukan proses penghitungan variabel total sama dengan upah ditambah lembur dikurangi denda.
Menampilkan nilai dari variabel upah.
Menampilkan nilai dari variabel lembur.
Menampilkan nilai dari variabel denda.
Menampilkan “--------------------- “.
Menampilkan nial dari variabel total.
Menutup deklarasi methode main.
Menutup deklarasi class Tugas3.



C.  SCREENSHOT  PROGRAM

Tugas Praktikum 2.1







Tugas Praktikum 2.2





Tugas Praktikum 2.3











D.  PRAKTIKUM

Data dan Analisis hasil percobaan :

A.     Conditional Assignment

1.    Jalankan file constAss.java dan benahi jika menemukan kesalahan!

Jawaban :

Tidak ada kesalahan.


2.    Ubah kode diatas pada baris ke empat dengan merubah type data String menjadi int, amati yang terjadi kemudian jelaskan!

Jawaban :


Akan muncul pemberitahuan “incompatible types” karena tipe data int hanya dapat digunakan untuk angka saja bukan digunakan untuk memberikan nilai berupa kata maupun kalimat.



3.    Tambahkan kode dibawah baris 5 dengan menambahkan program yang meminta inputan user dengan memasukkan nama dan nim masing-masing mahasiswa dan jika benar maka akan mencetak nama dan nim mahasiswa, jika salah maka mencetak “input nama salah” jika memasukkan nama yang salah, “input nim salah” jika memasukka nim yang salah.

Jawaban :

Source code.


Jika inputan Nama salah.


Jika inputan NIM salah.


Jika inputan Nama dan NIM benar.




4.    Buat program yang meminta untuk memasukkan nama dan password kemudian program akan meminta user untuk memasukkan nama dan password sesuai inputan sebelumnya. Jika benar maka program akan mencetak informasi biodata mahasiswa dan jika salah maka program akan mencetak “data tak ditemukan”.

Jawaban :





B.      If else

1.     Jalankan file seleksi1.java dan benahi jika menemukan kesalahan!

Jawaban :

Tidak ada kesalahan.




2.     Masukkan nilai 30, 60 dan 80 saat program dijalankan, dan jawablah dengan screenshot hasil keluaran dari program!

Jawaban :






3.     Pada baris 9, ubahlah kode program menjadi System.out.println("Nilai kurang!");, Pengaruh apa yang ditimbulkan setelah dilakukan pengubahan kode diatas!

Jawaban :


Jika diinputkan angka yang di mana nilai >=40, maka program akan mencetak “Nilai Kurang”.




C.      Nested If

1.    Jalankan file seleksi2.java dan benahi jika menemukan kesalahan!

Jawaban :

Tidak ada kesalahan.





2.    Masukkan nilai 5, 20, 30 saat program dijalankan, jelaskan alur jalan program dan beri screenshot keluaran dari program!

Jawaban :

Pada kondisi pertama ditanya apakah nilai di kalikan 2 kurang dari 50, jika iya maka nilai akan di tambah dengan angka 10, jika tidak maka akan langsung menuju kondisi ke dua. Karena 5 x 2 = 10, dan 10 kurang 50 maka disini 5 di tambahkan dengan angka 10 jadi nilai sekarang = 15.

        Pada kondisi kedua di tanya apakah nilai <= 20 jika iya maka cetak “Filkom”, jika tidak maka cetak “PTIIK”. Karena nilai = 15 dan 15 kurang dari 20, maka akan tercetak “Filkom”.

        Pada kondisi selanjutnya di tanya apakah nilai jika di modulus 2 hasilnya = 1. Jika iya maka cetak “UB”, jika tidak cetak “Brawijaya”. Karena nilai = 15 dan 15 di modulus 2 = 1, maka akan tercetak “UB”.




Pada kondisi pertama ditanya apakah nilai di kalikan 2 kurang dari 50, jika iya maka nilai akan di tambah dengan angka 10, jika tidak maka akan langsung menuju kondisi ke dua. Karena 20 x 2 = 40, dan 40 kurang 50 maka disini 20 di tambahkan dengan angka 10 jadi nilai sekarang = 30.

        Pada kondisi kedua di tanya apakah nilai <= 20 jika iya maka cetak “Filkom”, jika tidak maka cetak “PTIIK”. Karena nilai = 30 dan 30 lebih dari 20, maka akan tercetak “PTIIK”.

        Pada kondisi selanjutnya di tanya apakah nilai jika di modulus 2 hasilnya = 1. Jika iya maka cetak “UB”, jika tidak cetak “Brawijaya”. Karena nilai = 30 dan 30 di modulus 2 = 0, maka akan tercetak “Brawijaya”.




Pada kondisi pertama ditanya apakah nilai di kalikan 2 kurang dari 50, jika iya maka nilai akan di tambah dengan angka 10, jika tidak maka akan langsung menuju kondisi ke dua. Karena 30 x 2 = 60, dan 60 lebih dari 50 maka disini 30 nilainya akan tetap. jadi nilai sekarang = 30.

        Pada kondisi kedua di tanya apakah nilai <= 20 jika iya maka cetak “Filkom”, jika tidak maka cetak “PTIIK”. Karena nilai = 30 dan 30 lebih dari 20, maka akan tercetak “PTIIK”.

        Pada kondisi selanjutnya di tanya apakah nilai jika di modulus 2 hasilnya = 1. Jika iya maka cetak “UB”, jika tidak cetak “Brawijaya”. Karena nilai = 30 dan 30 di modulus 2 = 0, maka akan tercetak “Brawijaya”.




3.    Ubah kode diatas dengan memanfaatkan operasi and!

Jawaban :




D.     Switch case

1.     Jalankan file seleksi3.java dan benahi jika menemukan kesalahan!

Jawaban :

Tidak ada kesalahan.





2.     Pada baris 18,22,26,30 dan 34 hapus kode break, pengaruh apa yang terjadi setelah pengubahan kode tersebut!

Jawaban :


Memang saat code break; di hapus terlihat tidak terjadi kesalahan apa-apa, namun setelah di jalankan kita baru akan melihat kesalahan yang diakibatkan di hapusnya break;.


Disini kita dapat lihat kesalahan yang muncul akibat code break; di hapus, maka program akan berjalan terus sampai case terakhir tanpa memperhatikan pilihan yang di masukkan oleh user.



3.     Apa perbedaan seleksi kondisi dengan menggunakan switch case dan if-else, dan kapan kita harus menggunakan if-else dan kapan menggunakan switch case?

Jawaban :

switch-case :

percabangan yang digunakan saat kita memiliki banyak kondisi (lebih dari 2) dan banyak pernyataan (lebih dari 2). Sebenarnya switch-case ini hampir sama dengan else if, hanya saja sintaksnya yang berbeda.

If-else :

Percabangan if else digunakan saat kita memiliki dua pernyataan dengan syarat tertentu. 





E.  KESIMPULAN

Percabangan adalah suatu pilihan atau opsi dengan kondisi tertentu. Jika kondisi yang menjadi syarat terpenuhi, maka opsi atau pilihan dijalankan, jika tidak maka sebaliknya. Dalam java terdapat 4 macam jenis percabangan, if, if-else, else-if, dan juga switch. Keempat jenis ini memiliki penggunaan masing-masing. Berikut penjelasan mengenai penggunaan tiap-tiap percabangan :

·      if :

Percabangan if ini digunakan jika kita hanya memiliki satu pernyaatan yang akan dijalankan dengan syarat tertentu. Sintaks if seperti berikut :

Contoh : 

public class coba{

public static void main (String [] args){

int a=0;        

if (a==0)

   System.out.println("Nilai a = 0");

if (a==1)

   System.out.println("Nilai a = 1");

    }

}

Output : Program akan menampilkan  nilai a = 0 saja, karena pada if yang kedua, kondisi tidak memenuhi atau salah. 



·      if else :

Percabangan if else digunakan saat kita memiliki dua pernyataan dengan syarat tertentu. Sintaks if-else seperti berikut :

Contoh : 

public class coba{

public static void main (String [] args){

int a=0;        

if (a==0)

   System.out.println("Nilai a = 0");

else

   System.out.println("Nilai a = 1");

    }

}

Output : program akan menampilkan nilai a = 0, karena kondisi if bernilai benar, jika pada inisialisasi nilai a tidak bernilai 0, maka program akan menampilkan nilai a = 1.

·      else -if :

percabangan yang digunakan saat kita memiliki banyak kondisi (lebih dari 2) dan banyak pernyataan (lebih dari 2). Sintaks dari else-if seperti berikut :

Contoh :

public class coba{

public static void main (String [] args){

int a=2;        

if (a==0)

   System.out.println("Nilai a = 0");

else if(a==1)

   System.out.println("Nilai a = 1");

else if(a==2)

   System.out.println("Nilai a = 2"); 

    }

}

Output : Program akan menampilkan  nilai a = 2 saja, karena pada  else-if yang ketiga atau dengan pernyataan a==2 bernilai benar, sedangkan pernyataan yang lain tidak dijalankan karena kondisi tidak memenuhi.

·      switch-case :

percabangan yang digunakan saat kita memiliki banyak kondisi (lebih dari 2) dan banyak pernyataan (ledbih dari 2). Sebenarnya switch-case ini hampir sama dengan else if, hanya saja sintaksnya yang berbeda.Sintaks dari switch-case seperti berikut :

Contoh :

public class coba{

public static void main (String [] args){

int a=3;        

switch (a) { 

     case 1: 

        System.out.println("Nilai a=1");break;

     case 2: 

        System.out.println("Nilai a=2"); break;

     case 3: 

        System.out.println("Nilai a=3");break;

     default: 

        System.out.println("Nilai a=4"); break

          }

    }

}

Output : Program akan menampilkan  nilai a = 2 saja, karena kondisi bernilai benar, perhatika break dibelakang pernyataan, jika break ini dihapus, maka semua pernyataan akan dijalankan. Break digunakan untuk keluar dari switch-case saat 1 pernyataan sudah dijalankan.



Operator digunakan untuk melakukan operasi, perintah perhitungan, dan segala aksi yang ingin dimasukkan ke dalam program.

1.       Operator Aritmatika

(+) Operator penjumlahan (juga sebagai penyambung string)

(-) Operator pengurangan

(*) Operator perkalian

(/) Operator pembagian

(%) Operator sisa pembagian

Operator aritmatika digunakan untuk melakukan operasi matematika, seperti penambahan, pengurangan, pembagian, dan modulo (sisa pembagian). Contoh penggunaan:



Simbol
Nama Operator
Contoh Penggunaan
+
Penjumlahan
n=n+1;
-
Pengurangan
n=n-1;
*
Perkalian
n=n*1;
/
Pembagian
n=n/1;
%
Sisa Pembagian
n=n%1;
+
Peyambung String
n="saya"+"tidur";



2.       Operator Tunggal

(+)    Operator plus; menyatakan nilai positif (setiap angka tanpa tanda ini akan dianggap sebagai positif)

(-)     Operator minus; menyatakan nilai negatif, dapat pula digunakan untuk  menegatifkan suatu bilangan

(++)  Operator kenaikan; menambah suatu bilangan dengan 1

(--)    Operator penurunan; mengurangkan suatu bilangan dengan 1

(!)     Operator lawan; membalik nilai suatu boolean.



Operator tunggal hanya membutuhkan satu operan untuk melakukan operasinya. Operator ini tidak dapat digunakan untuk variabel final, karena variabel final berupa konstanta yang tidak dapat diubah-ubah. Beberapa jenis operator tunggal diberikan pada tabel di bawah ini



Simbol
Nama
Operasi
Contoh
+
Plus
Menyatakan nilai positif
angka = +1;
-
Minus
Menyatakan nilai negatif
angka = -1;
++
Kenaikan
Menambah bilangan dengan 1
angka =++angka;
--
Penurunan
Mengurangi bilangan dengan 1
angka = --angka;
!
Lawan
Membalik nilai suatu boolean
ok = !true



3.       Operator Pembanding, Boolean, dan Kondisi

Operator kondisi (conditional operator) menghasilkan nilai true atau false tergantung dari variabelnya, dalam hal ini operasinya dilakukan pada dua operand. Operator boolean adalah operator kondisi yang kedua operandnya berupa nilai boolean (true atau false), sedangkan Operator Pembanding membandingkan 2 nilai seperti pada operasi matematika.









Pada program tugas praktikum satu di situ kita belajar bagaimana penggunaan switch-case dan penerapanya pada pemecahan masalah yang di berikan. Kita dapat melakukan tiga bentuk pemecahan masalah 1)menghitung luas dan keliling persegi panjang. 2) menghitung luas dan keliling lingkaran. 3) menghitung luas dan keliling Segitiga. Dengan membaginya dalam case atau pilihan sehingga tiga masalah tersebut bisa digabungkan dalam sebuah program.

Sedangkan pada tugas peraktikum dua kita belajar bagaimana penggunan if-else untuk memecah beberapa kondisi yang telah di tentukan pada masalah(soal) yang telah di berikan. Program tugas praktikum dua berkaitan dengan menetukan kriteria IMT (Indeks Massa Tubuh) di mana ada penentuan empat kriteria yamg sudah dijelaskan pada soal dan kita membuat implementasiannya dalam sebuah progaram yaitu menggunakan fungsi if-else.

Untuk tugas praktikum tiga sama halnya seperti tugas praktikum dua yaitu menggunakan fungsi if-else. Di sini kita diharuskan untuk membuat program pemecahan masalah sistem penggajian di mana ada penghitungan uang lembur dan uang denda dengan kondisi yang telah ditentukan pada soal.


Untuk lihat versi lengkapnya klik link dibawah ini:

Lihat Selengkapnya


Semoga Bermanfaat salam : Arif Andrian

1 comment: