Anda di halaman 1dari 4

1

PRAKTIKUM MINGGU 3
PEMILIHAN KONDISI (SELECTION)

1. PILIHAN TUNGGAL
Bentuk paling sederhana pilihan tunggal adalah jika hanya ada satu pilihan kondisi yang
disediakan.
if kondisi then
true statement

CONTOH PERMASALAHAN 6 :
Menentukan luas keliling lingkaran dengan masukan data dari keyboard dan mengulang
penghitungan.
program ulanglagi;
uses crt;
const
phi = 3.14;
var
jari,luas,keliling : real;
lagi : char;
label ulang;
begin
ulang:
clrscr;
write(’Masukan jari-jari lingkaran = ’);
readln(jari);
luas=phi*jari*jari;
keliling=2*phi*jari;
writeln(‘Luas lingkaran = ‘,luas);
writeln(’Keliling lingkaran = ’,keliling);
writeln;
write(’Mau memasukkan bilangan lagi [Y/T] ? ’);readln(lagi);
if (lagi=’Y’) or (lagi=’y’) then goto ulang;
end.

2. PILIHAN GANDA
Digunakan untuk menentukan tindakan yang akan digunakan bila kondisi bernilai benar dan
salah.
if kondisi then
statement1
else
statement2

CONTOH PERMASALAHAN 7 :
Menentukan bilangan genap ganjil dari suatu bilangan.
program ganjilgenap;
uses crt;
var
bil : integer;
lagi : char;
begin
clrscr;
writeln('Program Menentukan Bilangan Ganjil / Genap');
writeln('==========================================');
write('Masukkan sembarang bilangan : ');readln(bil);
writeln;
if (bil mod 2 = 0) then
writeln(’Bilangan ’,bil,' termasuk bilangan genap')
else
writeln(’Bilangan ’,bil,' termasuk bilangan ganjil');
readln;
end.

2. PILIHAN MAJEMUK
Untuk menentukan tindakan yang akan digunakan disediakan lebih dari 2 alternatif. Merupakan
bentuk statement if dengan statement if lain di dalam if sebelumnya.
if kondisi1 then
statemen1
else
if kondisi2 then
statemen2
else
statemenberikutnya

CONTOH PERMASALAHAN 8 :
Mengelompokan nilai dengan ketentuan :
Jika nilai angka >= 90, maka nilai huruf = A
Jika nilai angka >= 80, maka nilai huruf = B
Jika nilai angka >= 70, maka nilai huruf = C
Jika nilai angka >= 60, maka nilai huruf = D
Jika nilai angka < 60, maka nilai huruf = E

program KelompokNilai;
uses crt;
var
nilai : integer;
ket : string;
huruf : char;
begin
writeln('PROGRAM PENGELOMPOKAN NILAI');
writeln(' ');
write('Masukkan nilai (0-100) : ');readln(nilai);
if(nilai>=81) then
begin
huruf := 'A';
ket := 'Lulus';
end
else
if(nilai>=70) then
begin
huruf := 'B';
ket := 'Lulus';
end
else
if(nilai>=60) then
begin
huruf := 'C';
ket := 'Lulus';
end
else
if(nilai>=40)then
begin
huruf := 'D';
ket := 'Gagal/Tidak Lulus';
end
else
begin
huruf := 'E';
ket := 'Gagal/Tidak Lulus';
end;
writeln;
writeln('Nilai huruf = ',huruf);
writeln('Keterangan = ',ket);readln;
end.
3. STRUKTUR CASE
Untuk masalah dengan dua pilihan atau lebih, struktur CASE dapat menyederhanakan penulisan
IF yang bertingkat-tingkat.

case ungkapan of
label1 : Statement1;
label2 : Statement2;
label3 : Statement3;
labeln : Statementn;
end;

CONTOH PERMASALAHAN 9 :
Pemilihan kode jurusan dengan struktur case
program jurusan;
uses crt;
var
jur,nama : string;
kode : char;
begin
write('Masukkan nama : ');readln(nama);
write('Pilih kode jurusan [A/B/C/D] : ');readln(kode);
case kode of
'A' : jur := 'Teknik Informatika';
'B' : jur := 'Manajemen Informatika';
'C' : jur := 'Sistem Informasi';
'D' : jur := 'Teknik Komputer';
end;
writeln;
writeln('Nama : ',nama);
writeln('Kode jurusan : ',kode);
writeln('Nama jurusan : ',jur);
readln;
end.
TUGAS
1. Menentukan huruf yang dimasukkan melalui keyboard huruf vokal atau konsonan
2. Menentukan bilangan terbesar dari 2 bilangan yang dimasukkan melalui keyboard
3. Menentukan bilangan terbesar dan terkecil dari 3 bilangan yang dimasukkan melalui
keyboard
4. Misalkan karyawan PT. Makmur dikelompokkan berdasarkan golongannya. Upah per jam
tiap karyawan bergantung pada golongannya, dengan ketentuan :
Golongan Upah per jam

A Rp. 10000,-
B Rp. 12000,-
C Rp. 15000,-
D Rp. 20000,-
Jumlah jam kerja normal selama 1 minggu adalah 48 jam. Kelebihan jam kerja dianggap
lembur dengan upah lembur adalah Rp.4000,- per jam untuk semua golongan karyawan.
Buat program menghitung gaji karyawan mingguan. Data yang dimasukan dari keyboard
adalah nama karyawan, golongan, jumlah jam kerja dalam 1 minggu. Berikut tampilannya :

PENGHITUNGAN GAJI PEGAWAI PT.MAKMUR


======================================
Nama karyawan :
Golongan :
Jam kerja :
======================================
Gaji : Rp.
Lembur : Rp.
Total Gaji : Rp.

5. Buat program seperti berikut :


Bila anda mengetikkan kata REG GOKIL maka muncul tampilan seperti dibawah ini :

MENU GOKIL GRATIS

1. Ringtone gokil
2. Nada sapa gokil
3. Cerita gokil
4. Keluar program

Masukkan pilihan Anda [1-4] :

Bila anda mengetikkan kata selain REG GOKIL maka muncul pesan ’Maaf keyword yang
Anda masukkan salah’ dan program selesai.

Untuk menu gokil, bila Anda pilih angka 1 maka muncul pesan ’Terima kasih telah
menggunakan layanan ringtone gokil’
Untuk menu gokil, bila Anda pilih angka 2 maka muncul pesan ’Terima kasih telah
menggunakan layanan nada sapa gokil’
Untuk menu gokil, bila Anda pilih angka 3 maka muncul pesan ’Terima kasih telah
menggunakan layanan cerita gokil’
Untuk menu gokil, bila Anda pilih angka 4 maka program selesai.
6. Perbaiki program biling warnet sehingga dapat menghitung lama pemakaian dan total bayar
misal pemakaian dari jam 23.00 sampai jam 01.00.
7. Perbaiki program nomor 6 dengan menambah fasilitas login user. Bila login user sebagai
’personal’ maka tarip per jam Rp. 5000,- Bila login user sebagai ’member’ maka tarip per
jam Rp. 3000,-

Anda mungkin juga menyukai