Pertemuan 4 SELEKSI KONDISI
Objektif: 1.
Mahasiswa dapat mengetahui sintaks penulisan dan penggunaan statement IF..THEN..ELSE.
2.
Mahasiswa dapat mengetahui sintaks penulisan dan penggunaan statement SELECT CASE.
3.
Mahasiswa dapat memahami penggunaan statement EXIT.
4.
Mahasiswa dapat membuat program menggunakan BASIC yang mengandung penyeleksian kondisi.
Page 32
P4.1. Teori Statement IF…THEN Dalam BASIC, seleksi kondisi dilakukan oleh statement IF..THEN dan SELECT CASE. Kondisi ini berupa suatu ekspresi yang menghasilkan nilai benar (-1) atau salah (0) saja. Ekspresi biasanya menggunakan relational operator atau logic operator. Bentuk umum statement IF..THEN : IF kondisi THEN statement1 [ELSE statement2] Jika dibuat bagan flow chart :
Kondisi = true ?
Tidak
Statement2
Ya Statement1 Gambar 3.1. Bagan Flowchart IF…THEN (Statement Tunggal) Bentuk lain : IF kondisi1 THEN [Blok statement-1] [ELSEIF kondisi2 THEN [blok statement-2]]… [ELSE [blok statement-n]] END IF
Page 33
Bentuk flowchartnya :
Kondisi1 =true ?
T
Kondisi2 = true ?
Y Blok Statement1
Y Blok Statement1
T
Kondisi n-1= true
T
Blok Statement -n
Y Blok Statement (n-1)
Gambar 3.2. Bagan Flowchart IF…THEN (Statement Bertingkat)
Bentuk pertama menggunakan statement tunggal. Jika kondisi benar akan melaksanakan statement-1 jika salah akan melaksanakan statement-2. Bentuk kedua adalah bentuk seleksi kondisi bertingkat. Jika kondisi-1 benar akan melaksanakan statement pada blok statement-1, jika tidak maka akan menyeleksi komdisi2. Jika kondisi-2 benar maka blok statement-2 akan dilaksanakan dst. Jika semua kondisi salah maka akan melaksanakan blok statement-n. Statement SELECT CASE Bentuk umum SELECT CASE : SELECT CASE ekspresi CASE ekspresi_list1 [Blok statement-1] [CASE ekspresi_list2 [Blok statement-1]]… [CASE ELSE [Blok statement-n]] END SELECT Ekspresi-list adalah daftar ekspresi yang dibandingkan nilainya dengan ekspresi yang dites. Ekspresi adalah nilai yang akan dibandingkan dengan nilai tiap-tiap ekspresi_list. Jika terpenuhi atau menghasilkan nilai benar maka akan melaksanakan blok statement di
Page 34
bawahnya. Jika tidak sesuai dengan semua ekspresi_list yang ada maka akan melaksanakan blok statement-n (di bawah CASE ELSE). Bentuk bagannya:
Blok Statement1
Blok Statement2
Blok Statement-n
Gambar 3.3. Bagan Flowchart SELECT CASE Contoh program : DIM Umur AS INTEGER DIM Nilai AS SINGLE DIM Peringkat AS INTEGER Umur = 45 Nilai = 75 Peringkat = 5 IF Umur >= 30
THEN
PRINT "Anda Sudah Tua"
ELSE
PRINT
"Anda _ Masih Muda" IF Nilai >=90 THEN PRINT "Anda mendapat nilai A" ELSEIF Nilai >=80 THEN PRINT "Anda mendapat nilai B" ELSEIF Nilai >=70 THEN Page 35
PRINT "Anda mendapat nilai C" ELSEIF Nilai >=60 THEN PRINT "Anda mendapat nilai D" ELSE PRINT "Anda mendapat nilai E" END IF SELECT CASE Peringkat CASE 1 TO 3 PRINT "Peringkat Anda Istimewa" CASE 4,5 PRINT "Peringkat Anda Bagus" CASE 6 TO 10 PRINT "Peringkat Anda Lumayan" CASE IS > 10 PRINT "Peringkat Anda Buruk" END SELECT END
Output program : Anda Sudah Tua Anda mendapat nilai C Peringkat Anda Bagus
Page 36
P4.2. Contoh Kasus Seorang mahasiswa diminta untuk membuat program tentang seleksi kondisi menggunakan bahasa pemrograman qbasic. Program yang dibuat akan menghasilkan output seperti pada gambar di bawah ini :
Langkah-langkah Pengerjaan 1. Klik aplikasi program Qbasic.exe, hingga muncul tampilan seperti pada gambar di bawah ini:
2. Setelah muncul tampilan diatas, maka selanjutnya tekan ESC pada keyboard untuk mengetikkan program yang akan dibuat. Berikut tampilan untuk mengetikkan program: Page 37
3.
Selanjutnya kita ketikkan souce code program berikut pada program qbasic. CLS ULANGLAGI: INPUT "NAMA : "; NAMA$ INPUT "NPM : "; NPM$ INPUT "NILAI TOTAL : "; NILAIANGKA SELECT CASE NILAIANGKA CASE IS > 90 NILAIHURUF$ = "A" CASE 75 TO 90 NILAIHURUF$ = "B" CASE 65 TO 74 NILAIHURUF$ = "C" CASE 55 TO 74 NILAIHURUF$ = "D" CASE ELSE NILAIHURUF$ = "E" END SELECT PRINT PRINT "NAMA : "; NAMA$; SPC(3); PRINT "NPM : "; NPM$ PRINT "NILAI ANGKA : "; NILAIANGKA Page 38
PRINT "NILAI HURUF : "; NILAIHURUF$: PRINT INPUT "COBA LAGI Y/N ? ", COBALAGI$ IF UCASE$(COBALAGI$) = "Y" THEN GOTO ULANGLAGI PRINT PRINT "SELESAI" END
4. Berikut ini tampilan hasil pengetikkan source code pada program qbasic.
5. Sebelum menjalankan source code tersebut, kita simpan terlebih dahulu source code tersebut, dengan cara klik File pada pada toolbar qbasic.exe Pilih savePilih directori untuk menyimpan file ini dan simpan dengan nama file SELECTCASE.bas. Berikut tampilan tahap penyimpanan.
Page 39
6. Setelah selesai menyimpan file tersebut, maka selanjutnya kita menjalankan program tersebut dengan cara menekan SHIFT+F5 , jika program yang telah ddiketikkan telah berhasil, maka program ini akan berjalan, tetapi pada saat program itu dijalankan program itu tidak berjalan, maka program tersebut mengalami kesalahan sintaks.
Page 40
P4.3. Latihan Soal CLS DIM UTS, UAS, Nilai AS INTEGER DATA 90, 70 READ UTS, UAS LET Nilai = (UTS + UAS) / 2 IF Nilai > 70 THEN PRINT "Lulus" ELSE PRINT "Tidak Lulus" END IF END Pertanyaan: 1. Apakah output dari program diatas? A. Lulus B. Tidak Lulus C. Error D. 0 E. Lulus and Tidak Lulus
Page 41
P4.4. Daftar Pustaka [1]
Jogiyanto H.M, Teori dan Aplikasi Program Komputer Bahasa Basic (edisi ke-5), Andi Offset, 1992.
[2]
F. Soesianto B.Sc.E, Ir., Eko Nugroho, Ir., P. Insap Santosa, Ir., Pemrograman Basic(edisi ke-2), Andi Offset, Yogyakarta, 1992.
[3]
Abdul Kadir, Pemrograman QBASIC. Panduan Untuk Belajar Sendiri Bahasa BASIC(edisi pertama), Andi Offset, 1995.
[4]
P. Insap Santosa, Quick Basic, Andi Offset, 1990.
Page 42