Marsel Willem Aipassa S Kom Parameter Choice DasarDasar


























- Slides: 26
Marsel Willem Aipassa, S. Kom. Parameter & Choice Dasar-Dasar Pemrograman
Parameter adalah suatu nilai yang diberikan kepada prosedur atau fungsi. Parameter diletakkan di dalam tanda kurung dari prosedur atau fungsi. Parameter yang dikirimkan dari prosedur utama ke sub prosedur disebut sebagai actual parameter. Dan parameter yang ada pada judul sub prosedur disebut sebagai formal parameter. Actual parameter dan formal parameter harus memiliki tipe data yang sama. Marsel Willem Aipassa, S. Kom.
Contoh Parameter (1) program cobaparam; uses crt; Formal Parameter procedure kali 2(nilai : integer); begin writeln(nilai, ‘ * 2 = ’, (nilai*2)); end; var nilai : integer; begin clrscr; write(‘Masukkan nilai: ’); readln(nilai); kali 2(nilai); readln; end. Actual Parameter Marsel Willem Aipassa, S. Kom.
Contoh Parameter (2) program param; uses crt; procedure kali 2(nil 1 : integer); begin writeln(nil 1, ‘ * 2 = ’, (nil 1*2)); end; function kali(nil 1, nil 2 : integer) : integer; begin kali : = nil 1*nil 2; end; var nilai 1 : integer; nilai 2 : integer; begin clrscr; write(‘Masukkan nilai 1: ’); readln(nilai 1); write(‘Masukkan nilai 2: ’); readln(nilai 2); writeln(‘Dari prosedur: ’); kali 2(nilai 1); writeln(‘Dari fungsi: ’); writeln(nilai 1, ‘ * ’, nilai 2, ‘ = ’, kali(nilai 1, nilai 2)); readln; end. Marsel Willem Aipassa, S. Kom.
Jenis Passing Parameter Ada dua jenis pemberian nilai (passing) parameter Passing by value Jika melakukan passing jenis ini maka nilai parameter yang dikirimkan tidak mempengaruhi nilai actual parameter. Passing by reference Jika melakukan passing jenis ini maka nilai parameter yang dikirimkan dapat mempengaruhi nilai actual parameter. Untuk menandai suatu parameter adalah reference untuk actual parameternya dipakai kata kunci var pada subprogram yang menerima. Marsel Willem Aipassa, S. Kom.
Contoh Passing By Value program cobaparam 2; uses crt; procedure cobapro(nilai : integer); begin nilai : = 5; writeln('Dari pro: ', nilai); end; var nilai : integer; begin clrscr; nilai : = 3; writeln('Utama: ', nilai); cobapro(nilai); writeln('Utama: ', nilai); readln; end. Marsel Willem Aipassa, S. Kom.
Contoh Passing By Reference program cobaparam 2; uses crt; procedure cobapro(var nilai : integer); begin nilai : = 5; writeln('Dari pro: ', nilai); end; var nilai : integer; begin clrscr; nilai : = 3; writeln('Utama: ', nilai); cobapro(nilai); writeln('Utama: ', nilai); readln; end. Marsel Willem Aipassa, S. Kom.
Choice (Percabangan) Setiap program yan kompleks mengandung suatu penyeleksian kondisi. Dengan menyeleksi suatu kondisi, program dapat menentukan tindakan apa yang harus dikerjakan tergantung dari kondisi yang diseleksi tersebut. Dalam pascal, untuk menyeleksi suatu kondisi digunakan statement IF THEN ELSE dan statement CASE OF. Marsel Willem Aipassa, S. Kom.
IF THEN Statement IF THEN akan membandingkan suatu kondisi dan jika kondisi yang dibandingkan tersebut bernilai benar (TRUE), maka program akan menjalankan perintah yang berada di dalam begin dan end; . Akan tetapi jika kondisi tersebut bernilai salah (FALSE) maka program tidak akan mengeksekusi perintah tersebut. Pada IF dapat digabungkan lebih dari satu kondisi dengan menggunakan operator logika (AND, OR, XOR, dll). Marsel Willem Aipassa, S. Kom.
Ekspresi Boolean Notasi Makna < Lebih kecil dari > Lebih besar dari = Sama dengan <= Lebih kecil dari atau sama dengan >= Lebih besar dari atau sama dengan <> Tidak sama dengan Marsel Willem Aipassa, S. Kom.
Ekspresi Boolean Notasi Makna NOT Negasi (~) AND Konjungsi/dan (^) OR Disjungsi/atau (V) XOR Exclusive-or Marsel Willem Aipassa, S. Kom.
Struktur IF THEN IF kondisi THEN BEGIN ……………… END; Marsel Willem Aipassa, S. Kom.
Contoh IF THEN program cobaifthen; uses crt; var nilai : integer; begin clrscr; write('Masukkan nilai: '); readln(nilai); if nilai > 60 then begin writeln('LULUS'); IF end; write('Selesai. '); readln; end. THEN Marsel Willem Aipassa, S. Kom.
ELSE IF Pada statemen IF THEN dapat ditambahkan bagian ELSE IF Jika kondisi pada bagian IF THEN bernilai FALSE maka kondisi lalu dibandingkan lagi di ELSE IF dan berlaku ketentuan seperti pada bagian IF. Jika kondisi pada IF THEN bernilai TRUE maka bagian ELSE IF akan dilewatkan. IF THEN dapat memiliki lebih dari satu bagian ELSE IF bersifat optional (boleh ada, boleh tidak) Marsel Willem Aipassa, S. Kom.
Struktur ELSE IF IF kondisi THEN BEGIN ……………… END {tanpa titik koma} ELSE IF BEGIN ……………… END; Marsel Willem Aipassa, S. Kom.
Contoh ELSE IF program cobaelseif; uses crt; Operator logika digunakan var nilai : integer; sebagai penggabung kondisi begin clrscr; write('Masukkan nilai: '); readln(nilai); if (nilai > 60) AND (nilai <= 100) then begin writeln('LULUS'); IF THEN end else if (nilai <= 60) AND (nilai >= 0)then begin writeln(‘TIDAK LULUS'); ELSE IF end; write('Selesai. '); readln; Untuk menggabungkan lebih end. dari satu kondisi, setiap kondisi diletakkan di dalam tanda kurung Marsel Willem Aipassa, S. Kom.
ELSE IF THEN dapat ditambah suatu bagian lagi yang disebut sebagai ELSE. Jika kondisi pada bagian IF THEN atau ELSE IF semuanya bernilai FALSE, maka bagian ELSE akan dijalankan tanpa mambandingkan kondisi. Jika kondisi pada bagian-bagian sebelum ELSE bernilai TRUE maka bagian ELSE akan dilewatkan. ELSE bersifat optional (boleh ada, boleh tidak) Marsel Willem Aipassa, S. Kom.
Struktur ELSE IF kondisi THEN BEGIN ……………… END {tanpa titik koma} ELSE IF BEGIN ……………… END ELSE BEGIN ……………… END; Marsel Willem Aipassa, S. Kom.
Contoh ELSE program cobaelse; uses crt; var nilai : integer; begin clrscr; write('Masukkan nilai: '); readln(nilai); if (nilai > 60) AND (nilai <= 100) then begin writeln('LULUS'); end else if (nilai <= 60) AND (nilai >= 0)then begin writeln(‘TIDAK LULUS'); end else begin writeln(‘INPUTAN TIDAK VALID'); end; write('Selesai. '); readln; end. IF THEN ELSE IF ELSE Bagian ELSE harus diletakkan paling akhir dari urutan choice Marsel Willem Aipassa, S. Kom.
CASE OF Penggunaan statement CASE OF ini sebagai choice hampir sama dengan IF THEN ELSE. Pada CASE OF terdapat dua nilai yang memberikan nilai kondisi yaitu value dan option. Pernyataan pada CASE OF akan dieksekusi jika value memiliki nilai yang sama dengan option. Perbedaannya dengan IF THEN ELSE yaitu CASE OF tidak bisa menggabungkan lebih dari satu kondisi dengan menggunakan operator logika. Marsel Willem Aipassa, S. Kom.
CASE OF Selain itu CASE OF hanya menggunakan option untuk nilai yang akan dibandingkan. Option harus bertipe data bilangan (integer, float, dll) atau char. Marsel Willem Aipassa, S. Kom.
Statement CASE OF CASE value OF option 1 : statement 1; option 2 : statement 1; option 3 : statement 1; option 4 : grade: ='D'; ELSE statement. Else; END; Statement ELSE bersifat optional. Marsel Willem Aipassa, S. Kom.
Contoh 1 CASE OF program cobacaseof; uses crt; var nilai : integer; begin clrscr; write('Masukkan nilai: '); readln(nilai); case nilai of 1 : writeln('Nilai satu. '); 2 : writeln('Nilai dua. '); 3 : writeln('Nilai tiga. '); else : writeln(‘Nilai tidak dikenal'); end; write('Selesai. '); readln; end. Marsel Willem Aipassa, S. Kom.
(Contoh 1 Jika diubah ke IF THEN ELSE) program cobacaseof; uses crt; var nilai : integer; begin clrscr; write('Masukkan nilai: '); readln(nilai); if nilai = 1 then begin writeln('Nilai satu'); end else if nilai = 2 then begin writeln('Nilai dua'); end else if nilai = 3 then begin writeln('Nilai tiga'); end else begin writeln('Nilai tidak dikenal. '); end; write('Selesai. '); readln; end. Marsel Willem Aipassa, S. Kom.
CASE OF Nilai option pada CASE OF dapat di buat ke dalam bentuk range/jangkauan dengan menggunakan notasi ‘. . ’ Contoh jangkauan 1 sampai 10 akan dituliskan ‘ 1. . 10’ Marsel Willem Aipassa, S. Kom.
Contoh CASE OF program cobacaseof 2; uses crt; var nilai : integer; begin clrscr; write('Masukkan nilai: '); readln(nilai); case nilai of 80. . 100 : begin writeln(‘Selamat. '); writeln('Nilai A. '); end; 60. . 79 : writeln('Nilai B. '); 40. . 59 : writeln('Nilai C. '); 20. . 39 : writeln('Nilai D. '); 0. . 19 : writeln('Nilai E. '); else : writeln(‘Nilai tidak dikenal'); end; write('Selesai. '); readln; end. Jika dibutuhkan lebih dari satu perintah untuk dieksekusi, dapat menggunakan begin end Marsel Willem Aipassa, S. Kom.