penyeleksian kondisi

10
Modul Pemrograman Komputer Dasar, Universitas Muhammadiyah Yogyakarta, 2006 30 BAB IV PENYELEKSIAN KONDISI (PEMILIHAN) Kompetensi Dasar : 1. Mahasiswa mengenal macam-macam penyeleksian kondisi. 2. Mahasiswa mampu menggunakan penyeleksian kondisi berdasarkan kasus yang ada. Indikator : 1. Mahasiswa mampu menganalisa dan mencari satu atau lebih kondisi yang ada pada setiap kasus. 2. Mahasiswa mampu membedakan dan menggunakan pernyataan penyeleksi (if .. then, if .. then .. else .. ,dll) sesuai dengan kasus yang ditemui. 3. Mahasiswa mampu membuat program penyeleksian kondisi dengan bahasa Pascal.

Upload: winda-viscaria

Post on 24-Jun-2015

164 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Penyeleksian Kondisi

Modul Pemrograman Komputer Dasar, Universitas Muhammadiyah Yogyakarta, 2006 30

BAB IV

PENYELEKSIAN KONDISI (PEMILIHAN)

Kompetensi Dasar :

1. Mahasiswa mengenal macam-macam penyeleksian

kondisi.

2. Mahasiswa mampu menggunakan penyeleksian kondisi

berdasarkan kasus yang ada.

Indikator :

1. Mahasiswa mampu menganalisa dan mencari satu atau

lebih kondisi yang ada pada setiap kasus.

2. Mahasiswa mampu membedakan dan menggunakan

pernyataan penyeleksi (if .. then, if .. then ..

else .. ,dll) sesuai dengan kasus yang ditemui.

3. Mahasiswa mampu membuat program penyeleksian

kondisi dengan bahasa Pascal.

Page 2: Penyeleksian Kondisi

Modul Pemrograman Komputer Dasar, Universitas Muhammadiyah Yogyakarta, 2006 31

Penyeleksian kondisi adalah salah satu elemen

algoritma yang paling sederhana. Penyeleksian kondisi

memungkinkan suatu pernyataan dieksekusi hanya jika

kondisi terpenuhi atau tidak terpenuhi.

Page 3: Penyeleksian Kondisi

Modul Pemrograman Komputer Dasar, Universitas Muhammadiyah Yogyakarta, 2006 32

A. Pernyataan if .. then

Pernyataan if digunakan untuk menguji sebuah

kondisi. Bila kondisi yang diuji terpenuhi, program

akan menjalankan pernyataan-pernyataan tertentu; dan

bila kondisi yang diuji salah, program akan berhenti

dan tidak menjalankan apapun. Bentuk umum pernyataan

if adalah sebagai berikut:

if kondisi(pernyataan-pernyataan yang dijalankanjika kondisi terpenuhi)

kondisi sendiri merupakan suatu ekspresi bertipe

Boolean, artinya hanya dapat bernilai benar (true)

atau salah (false).

Contoh :

if (x>0) then writeln(‘x bilangan positif’)

Program ini akan menuliskan ‘x bilangan positif’

jika variable x lebih besar daripada 0 dan akan

berhenti atau tidak menjalankan pernyataan apapun

jika x < 0.

B. If tersarang (nested If)

Struktur If tersarang merupakan bentuk dari suatu

statement If berada di dalam lingkungan statemen If

yang lainnya. Bentuk statement If tersarang sebagai

berikut :

if kondisi1 thenbegin

if kondisi2 then begin

statemen1end;

else statemen2end;

Page 4: Penyeleksian Kondisi

Modul Pemrograman Komputer Dasar, Universitas Muhammadiyah Yogyakarta, 2006 33

else Statement3;

C. Penyataan if .. then .. else ..

Pernyataan if..else digunakan untuk menguji sebuah

kondisi. Bila kondisi yang diuji terpenuhi, program

akan menjalankan pernyataan-pernyataan tertentu; dan

bila kondisi yang diuji salah, program akan

menjalankan pernyataan-pernyataan lain. Bentuk umum

pernyataan if..else adalah sebagai berikut:

if kondisi thenBegin (pernyataan-pernyataan yang dijalankanjika kondisi terpenuhi)

EndElseBegin (pernyataan-pernyataan yang dijalankanjika kondisi TIDAK terpenuhi)

End

Contoh:

if (x>0) thenwriteln(’x bilangan positif’)Elsewriteln(‘x BUKAN bilangan positif’);

Program ini akan menuliskan ‘x bilangan positif’

jika variable x lebih besar daripada 0 dan

menuliskan ‘x BUKAN bilangan positif’ jika x lebih

kecil atau sama dengan 0.

Pernyataan if .. else di atas tidak diletakkan

diantara kata kunci begin dan end, karena pernyataan

yang diekskusi hanya satu baris, sedang untuk

Page 5: Penyeleksian Kondisi

Modul Pemrograman Komputer Dasar, Universitas Muhammadiyah Yogyakarta, 2006 34

pernyataan lebih dari satu baris maka wajib

diletakkan di antara kata kunci begin dan end.

D. Pernyataan if .. then .. else if .. then .. else ..

Dalam kasus-kasus tertentu, terdapat kondisi lebih

dari dua yang tidak dimungkinkan menggunakan

pernyataan if..else. Oleh sebab itu, untuk menangani

kasus tersebut digunakan pernyataan if..else if.

Contoh:

if (x>0) then writeln (‘x bilangan positif’)else if (x<0) then writeln (‘x bilangan negatif’)elsewriteln (‘x adalah nol’);

Pada contoh di atas, mula-mula program mengecek

nilai x > 0 atau tidak. Bila kondisi ini terpenuhi

program akan menulis ‘x bilangan positif’.

SEbaliknya bila tidak terpenuhi, program akan

menjalankan pernyataan if kedua untuk mengecek nilai

x < 0 atau tidak. Bila kondisi ini terpenuhi program

akan menulis ‘x bilangan negatif’. Dan bila tidak

terpenuhi, program menulis ‘x adalah nol’.

E. Pernyataan Case

Penyataan case digunakan untuk menyederhanakan

kontruksi if..else if yang terlalu banyak.

Bentuk struktur dari case - Of:

case Variabel Kondisi ofcase – Label 1; Statement 1;case – Label 2; Statement 2;case – Label 3; Statement 3;

Page 6: Penyeleksian Kondisi

Modul Pemrograman Komputer Dasar, Universitas Muhammadiyah Yogyakarta, 2006 35

case – Label 4; Statement 4;................case – Label n ; Statement n ;end ; { end dari case }

Contoh:

if (x = 0) thenwriteln (‘x bernilai nol’)else if (x = 1) thenwriteln (‘x bernilai 1’)else if (x = 2) thenwriteln (‘x bernilai 2’)else if (x = 3) thenwriteln (‘x bernilai 3’)elsewriteln (‘x tidak bernilai 0, 1, 2, ataupun 3’);

Program di atas dapat diganti menjadi lebih ringkas

dan mudah dibaca dengan program berikut:

case x of0 : writeln (‘x bernilai 0’);1 : writeln (‘x bernilai 1’);2 : writeln (‘x bernilai 2’);3 : writeln (‘x bernilai 3’);ElseWriteln (‘x tidak bernilai 0, 1, 2, ataupun 3’);end;

Page 7: Penyeleksian Kondisi

Modul Pemrograman Komputer Dasar, Universitas Muhammadiyah Yogyakarta, 2006 36

F. Petunjuk Praktikum

1. Kasus 1

Tentukanlah bilangan terbesar antara dua bilangan bulat

Flow Chart Kasus 1

mulai

A,B

A > B ?

max = B

selesai

max = AYa

Tidak

Program dalam bahasa Pascal

program Maksimum;uses wincrt;var A, B : integer;Begin

write (‘Bilangan pertama = ‘); readln (A);write (‘Bilangan kedua = ‘); readln (B);if (A > B) then

writeln (‘Bilangan terbesar : ‘, A)Else

writeln (‘Bilangan terbesar : ‘, B);end.

Page 8: Penyeleksian Kondisi

Modul Pemrograman Komputer Dasar, Universitas Muhammadiyah Yogyakarta, 2006 37

2. Kasus 2

Tentukanlah bilangan terbesar antara tiga bilangan bulat

Flow Chart Kasus 2

mulai

selesai

x, y, z

x > yand x > z ?

y > xand y > z ?

max = x

max = y

max = z

Ya

Tidak

Ya

Tidak

Program dalam bahasa Pascal

Program Nilai_Maksimum;uses wincrt;var x, y, z : integer;Beginwrite (‘Bilangan pertama = ‘); readln (x);write (‘Bilangan pertama = ‘); readln (y);write (‘Bilangan pertama = ‘); readln (z);if (x > y) and (x > z) then write (‘Bilangan terbesar adalah = ‘, x)else if (y > x) and (y > z) then write (‘Bilangan terbesar adalah = ‘, y)else write (‘Bilangan terbesar adalah = ‘, z);end.

Page 9: Penyeleksian Kondisi

Modul Pemrograman Komputer Dasar, Universitas Muhammadiyah Yogyakarta, 2006 38

G. Rangkuman

1. Penyeleksian kondisi memungkinkan suatu pernyataan

dieksekusi hanya jika kondisi terpenuhi atau tidak

terpenuhi.

2. Ada beberapa pernyataan penyeleksian :

a. if .. then

b. if bersarang

c. if .. then .. else ..

d. if .. then .. else if .. then .. else ..

H. Tugas Praktikum (dikumpulkan akhir sesi)

Buatlah Program untuk mengkonversikan nilai angka

menjadi nilai huruf dengan ketentuan sebagai

berikut:

Nilai Angka Nilai Huruf0 – 20 E21 – 40 D41 – 60 C61 – 80 B81 – 100 A

I. Tugas Rumah (dikumpulkan pada pertemuan berikutnya)

Buatlah algoritma, flowchart, dan program dengan

bahasa Pascal untuk mengkonversikan nilai angka

menjadi nilai huruf dan statusnya dengan ketentuan

sebagai berikut:

Nilai Angka Nilai Huruf Status0 – 20 E Sangat Kurang21 – 40 D Kurang41 – 60 C Cukup61 – 80 B Baik81 – 100 A Sangat Baik

Page 10: Penyeleksian Kondisi

Modul Pemrograman Komputer Dasar, Universitas Muhammadiyah Yogyakarta, 2006 39

Daftar Pustaka

Pranata, Anthony., Algoritma Pemrograman, J&J Learning,Yogyakarta

Sutopo, Anton, Pemrograman Komputer Dasar, 2005,Yogyakarta

Hadi S., Chendra, Memahami Struktur dan Elemen padaBahasa Pemrograman, 2003, www.ilmukomputer.com