2. IF ungkapan_logika THEN pernyataan;. Bila ungkapan_logika benar maka pernyataan dikerjakan. 3. IF ungkapan_logika THEN pernyataan1 ELSE pernyataan2;. Bila ungkapan_logika benar maka pernyataan1 dikerjakan. Jika ungkapan_logika salah maka pernyataan2 di

KONTROL PROGRAM

  Urutan pelaksanaan instruksi (aliran program : program flow) selalu berawal

dari atas menuju intruksi dibawahnya. Seperti air yang mengalir dari atas ke bawah.

Urutan tersebut dapat berubah bila ada instruksi kontrol aliran program yang dapat

menyebabkan berubahnya urutan pelaksanaan program. Pernyataan-pernyataan kontrol

program dalam Pascal adalah: GOTO nama_label;.

  

1. Untuk melaksanaakan pernyataan yang ada di baris

nama_label.

  Pernyataan1 Pernyataan2

Nama_label

IF ungkapan_logika THEN pernyataan;.

  2. Bila ungkapan_logika benar maka pernyataan dikerjakan.

  SALAH Ungk_ Ungk_ BENAR logis logis BENAR SALAH

  Pernyataan Pernyataan

  IF ungkapan_logika THEN pernyataan1 ELSE pernyataan2;.

  3. Bila ungkapan_logika benar maka pernyataan1 dikerjakan. Jika ungkapan_logika salah maka pernyataan2 dikerjakan.

  

SALAH

Ungk_ logis BENAR

  Pernyataan1 Pernyataan2

  CASE variabel OF 4.

  Daftar konstanta 1 : pernyataan 1; Daftar konstanta 2 : pernyataan 2;

  : : :

  Daftar konstanta n : pernyataan n ELSE pernyataan m; END; Bila nilai variabel sama dengan nilai yang ada dalam daftar konstanta 1 maka pernyataan 1 dikerjakan, bila sama dengan nila yang ada dalam daftar konstanta 2 maka pernyataan 2 dikerjakan, dst hingga pernyataan n. Bila tidak ada nilai dalam

daftar konstanta yang sama dengan nilai variabel maka pernyataan m dikerjakan.

  dan FOR var := awal DOWNTO akhir DO pernyataan;

  Untuk range nilai var = awal hingga var = akhir maka pernyataan akan dikerjakan ulang. Pada REPEAT pernyataan UNTIL ungkapan_logika;.

  FOR-TO-DO

  , setiap setelah pernyataan dikerjakan maka nilai variabel var di naikkan, pada FOR-DOWNTO-DO nilai variabel var di turunkan.

  Variabel =? Pernyataan1 Pernyataan2 =DftrKonst1

  =DftrKonst2

Pernyataann

=DftrKonstn Pernyataan1

  Tidak ada di semua daftar . . . . .

  Variabel= DftrKonst1 Pernyataan1 Pernyataan2

  Pernyataann Pernyataanm Variabel= DftrKonst2 Variabel= DftrKonstn

  SALAH Benar SALAH Benar

  SALAH Benar

5. FOR var := awal TO akhir DO pernyataan;

  VAR = awal TO akhir pernyataan;

  VAR

  VAR = awal DOWNTO akhir pernyataan;

  VAR

  6. Ulangi pernyataan hingga ungkapan_logika benar.

  Pernyataan; SALAH Ungkapan logika ?

  BENAR WHILE ungkapan_logika DO pernyataan;.

  7. Selama ungkapan_logika benar maka pernyataan akan dikerjakan berulang ulang.

  SALAH Ungkapan logika ? BENAR

  Pernyataan; Apabila pernyataan yang diperlukan lebih dari satu maka penulisan pernyataan-

pernyataan tersebut harus diawali dengan begin dan diakhiri dengan end; . Operator

yang digunakan dalam ungkapan logis adalah operator relasi dan operator boolean.

Operator relasi ditunjukkan dalam Tabel 1 sedangkan operator boolean Tabel 2. Tabel 1. Simbol dan arti operator relasi Simbol operator Arti

  Op1 < Op2 Operand 1 kurang dari operand 2

  Op1 > Op2 Operand 1 lebih dari operand 2

  Op1 <= Op2 Operand 1 kurang dari atau sama dengan operand 2

  Op1 >= Op2 Operand 1 lebih dari atau sama dengan operand 2

  Op1 = Op2 Operand 1 sama dengan operand 2. Bandingkan dengan :=

  Op1 <> Op2 Operand 1 tidak sama dengan operand 2

  Tabel 2. Simbol dan arti operator boolean Simbol operator Arti

  Not Op1 Negasi operand 1

  Op1 and Op2 Operand 1 and operand 2

  Op1 or Op2 Operand 1 or operand 2

  Op1 xor Op2 Operand 1 xor operand 2

  Hasil proses dari operator diatas tidak disimpan dalam variabel tertentu dan

hanya untuk menyatakan kondisi benar dan kondisi salah. Dari kondisi ini keputusan

diambil dan dapat menyebabkan perubahan urutan pelaksanaan program.

  Pemakaian operator harus memperhatikan prioritas pelaksanaannya. Tabel prioritas telah disajikan dalam materi terdahulu.

  Latihan 1: Pernyataan GOTO nama_label Tujuan : 1.

  Mengetahui cara menggunakan loncatan tak bersyarat:

  GOTO

  Langkah Percobaan

1. Tulislah program dibawah ini pada editor Turbo Pascal

  1 Program loncatan_tak_bersyarat; 2 (* ----------------------------- *) 3 (* Nama : *) 4 (* NIM : *) 5 (* ----------------------------- *)

  3

  15

  14

  13

  12

  11

  10

  9

  8

  7

  6

  5

  4

  2

  6 Label ulang; Deklarasi sebuah label

  1

  Data dari hasil pengamatan layar monitor Baris Kolom 12345678901234567890123456788901234567890 Keterangan/komentar

  Brs ke Naskah program Keterangan

  Akhir program 2.

  14 Goto ulang; Lompat ke label ulang 15 End.

  ] ditekan

  13 Readln; Tunggu tombol [

  12 Writeln('Tekan Ctrl+Break keluar');

  11 Writeln('Tekan enter menaikkan nilai counter');

  10 Writeln('Nilai counter = ', counter); Lihat hasilnya dan catat.

  9 Ulang: Baris yang ditandai dengan label ‘ulang’

  8 Begin Awal program

  7 Var counter : byte; Deklarasi sebuah variabel

  Kompilasi dan jalan program. Berikan respon pada perintah yang diberikan oleh program. Amati output program pada layar monitor dan catat hasilnya.

  Pengamatan data Lengkapi kolom keterangan/komentar. Lengkapilah pernyataan berikut

  

1. Deklarasi konstanta dilakukan dengan kata kunci: …….………………………………

2. Penulisan label dalam program dilakukan dengan cara: ……………………………….

…………………………………………………………………………………………….

  3. Penghentian program dengan paksa dilakukan dengan cara:

…………………………………………………………………………………………….

…………………………………………………………………………………………….

  

4. Apakah program dapat berhenti secara normal (pelaksanaan instruksi hingga baris

15)? Berikan penjelasan.

……………………………………………………………………………………………

……………………………………………………………………………………………

……………………………………………………………………………………………

  readln

5. Apa fungsi dari pernyataan dalam program diatas ………………………….

  

…………………………………………………………………………………………….

  Latihan 2: Pernyataan

  IF-THEN dan IF-THEN-ELSE Tujuan :

  Mengetahui urutan pelaksanaan program yang mengandung pernyataan

  IF-THEN 1.

  dan IF-THEN-ELSE

  Langkah Percobaan

  1. Tulislah program dibawah ini pada editor Turbo Pascal Brs Naskah program Keterangan ke

  1 Program Nilai_siswa; 2 (* ----------------------------- *) 3 (* Nama : *) 4 (* NIM : *) 5 (* ----------------------------- *)

  6 Label ulang; NilaiAngka : byte;

  7 Var NilaiHuruf : char;

  8

  9 Begin

  10 Ulang:

  11 Write('Masukkan Nilai Angka (0 .. 100) =');

  12 Readln(NilaiAngka);

  13 Writeln('Angka yang dimasukkan = ', NilaiAngka);

  14 IF NilaiAngka > 100 THEN

  15 Begin

  16 Writeln('Nilai yang dimasukkan > 100');

  17 Goto Ulang;

  18 End;

  19 IF NilaiAngka > 90 THEN NilaiHuruf := 'A'

  20 ELSE

  21 IF NilaiAngka >= 70 THEN NilaiHuruf := 'B'

  22 ELSE

  23 IF NilaiAngka >= 60 THEN NilaiHuruf := 'C'

  24 ELSE

  25 IF NilaiAngka >= 50 THEN NilaiHuruf := 'D'

  26 ELSE

  27 IF NilaiAngka >= 40 THEN NilaiHuruf := 'E';

  28 Write('Nilai Angka = ', NilaiAngka);

  29 Writeln(' (Nilai Huruf = ', NilaiHuruf, ')');

  30 Writeln('Tekan Enter untuk keluar');

  31 Readln; Tunggu tombol [ ] ditekan 32 End.

  Akhir program 2.

  Kompilasi dan jalan program. Berikan respon pada perintah yang diberikan oleh program. Amati output program pada layar monitor dan catat hasilnya.

  Data dari hasil pengamatan layar monitor Kolom Baris Keterangan/komentar 12345678901234567890123456788901234567890

  1

  2

  3

  4

  5

  6

  7

  8

  9

  10

  11

  12

  13

  14

  15

  16

  17

  18

  19

  20

  Pengamatan data Lengkapi kolom keterangan/komentar. Lengkapilah pernyataan berikut

  1. Pernyataan mana yang dikerjakan bila nilai angka yang diberikan adalah 200?

…….……………………………………………………………………………………..

  2. Pernyataan mana yang dikerjakan bila nilai angka yang diberikan adalah 20?

…………………………………………………………………………………………….

  3. Pernyataan mana yang dikerjakan bila nilai angka yang diberikan adalah 65?

…………………………………………………………………………………………….

  

4. Pesan apa yang diperoleh bila nilai angka yang diberikan berupa pecahan? Berikan

penjelasan.

……………………………………………………………………………………………

……………………………………………………………………………………………

  readln;

  5. (baris 31) dalam program diatas? Apa pengaruh pernyataan

…………………………………………………………………………………………….

…………………………………………………………………………………………….

  Latihan 3: Pernyataan repeat – until dan while - do Tujuan :

  Mengetahui urutan pelaksanaan program yang mengandung pernyataan

  repeat – 3.

  until while - do

  dan Langkah Percobaan

  1. Tulislah program dibawah ini pada editor Turbo Pascal Brs Naskah program Keterangan ke

  1 Program Nilai_siswa; 2 (* ----------------------------- *) 3 (* Nama : *) 4 (* NIM : *) 5 (* ----------------------------- *)

  NilaiAngka : byte;

  6 Var

  7 NilaiHuruf,

  8 Key : char;

  9 Begin 10 key := ’Y’;

  11 While key = ’Y’ do

  12 Begin

  13 Repeat

  14 Write('Masukkan Nilai Angka (0 .. 100) =');

  15 Readln(NilaiAngka);

  16 Writeln('Angka yang dimasukkan = ', NilaiAngka);

  17 Until NilaiAngka <= 100;

  18 Case NilaiAngka Of

  : NilaiHuruf := 'A'

  19 91..100

  : NilaiHuruf := 'B'

  20 70..90

  : NilaiHuruf := 'C'

  21 60..69

  : NilaiHuruf := 'D'

  22 50..59

  : NilaiHuruf := 'E'

  23 0..40

  24 End;

  25 Writeln('Nilai Huruf = ', NilaiHuruf);

  26 Tekan [Y] untuk mengulang;

  27 Key := readkey;

28 End; 4.

  Kompilasi dan jalan program. Berikan respon pada perintah yang diberikan oleh program. Amati output program pada layar monitor dan catat hasilnya.

  Data dari hasil pengamatan layar monitor Kolom Baris Keterangan/komentar 12345678901234567890123456788901234567890

  1

  2

  3

  4

  5

  6

  7

  8

  9

  10

  11

  12

  13

  14

  15

  16

  17

  18

  19

  20

  21

  22

  Pengamatan data Lengkapi kolom keterangan/komentar. Lengkapilah pernyataan berikut

  Key

  1. Berapa nilai variabel pada baris 10? Bagaimana Anda dapat membuktikan?

…….……………………………………………………………………………………..

  2. Pernyataan mana yang dikerjakan bila nilai angka yang diberikan adalah 200?

…………………………………………………………………………………………….

  3. Pernyataan mana yang dikerjakan bila nilai angka yang diberikan adalah 20?

…………………………………………………………………………………………….

  4. Pernyataan mana yang dikerjakan bila nilai angka yang diberikan adalah 65?

…………………………………………………………………………………………….

  

4. Pesan apa yang diperoleh bila nilai angka yang diberikan berupa pecahan? Berikan

penjelasan.

……………………………………………………………………………………………

……………………………………………………………………………………………

  y Y 6.

  ’ bukan ’ ’? Apa yang dikerjakan komputer bila tombol yang ditekan adalah ’

…………………………………………………………………………………………….

…………………………………………………………………………………………….