Procedure dan Fungsi BAHASA PEMROGRAMAN PASCAL

Bahasa Pemrograman Pascal Diktat Dasar Komputer dan Pemrograman T. Elektro FTI UAD 69 writelnMasukkan data non negatif, dan untuk mengakhiri masukkan angka -1; readlnbilangan; until bilangan=neg; mean:= total1n; std:=sqrttotal2n-1-sqrtotal1nn-1; writelnMean = ,mean:7:2; writelnDeviasi Standar = ,std:8:3; readln; end.

7.7. Procedure dan Fungsi

Procedure merupakan bentuk subprogram dalam bahasa Pascal, yaitu sekelompok statemen yang bisa menjadi bagian dari program sub program. Procedure dipakai untuk mengelompokkan bagian program, yang dapat dikerjakan berkali-kali dengan memanggil namanya saja, sehingga menyederhanakan struktur program dan mengurangi pengulangan penulisan bagian-baigan program berkali-kali. Deklarasi procedure terletak pada bagian deklarasi pada program yang menggunakannya, dibawah deklarasi VAR pada program utama. Bentuk umum : PROCEDURE nama_procedure daftar parameter formal; Bagian deklarasi variabel lokal Begin Bagian Pernyataan End; dimana, pemberian nama procedure : mengikuti aturan perberian nama variabel daftar parameter formal : bersifat option, boleh ada boleh tidak. Daftar ini hanya untuk mengontrol komunikasi informasi ke dan dari procedure tersebut. Ada 2 tipe parameter formal, yaitu : Bahasa Pemrograman Pascal Diktat Dasar Komputer dan Pemrograman T. Elektro FTI UAD 70 1. Parameter perubah, yang mengambil nilai dari parameter aktual dan jika nilainya berubah, maka nilai parameter aktual juga berubah. 2. Parameter nilai, yang hanya mengambil nilai dari parameter aktual yang sesuai tanpa mengubah nilainya, meskipun nilai parameter formal ini berubah. Dalam procedure maupun program utamanya terdapat bagian deklarasi varibel. Variabel yang dideklarasikan pada program utama disebut variabel global, yaitu variabel yang dapat diakses pada semua bagian program. Sedangkan pada procedure dideklarasikan variabel lokal, yaitu variabel yang hanya bisa diakses oleh bagian program dimana variabel tersebut dideklarasikan. Sebuah procedure bisa memanggil procedure lain yang telah didefinikan sebelumnya, kemudian dipanggil pada program utama. Bentuk umum pemanggilan procedure : Nama_procedure daftar parameter aktual; dimana, Nama procedure : harus sesuai dengan nama procedure yang digunakan pada waktu dideklarasikan. Daftar parameter aktual : berisi nama-nama parameter yang dioperasikan pada procedure yang dipanggil. Parameter-parameter aktual ini harus dideklarasikan pada program utama, tidak boleh berupa konstanta atau ungkapan. Urutan posisi, caca parameter dan tipe data setiap parameternya harus sesuai dengan parameter formal. Fungsi mempunyai kegunaan yang hampir sama dengan procedure dengan sedikit perbedaan, yaitu : • Fungsi hanya memberikan satu hasil • Nama fungsi, selain digunakan untuk memanggil fungsi tersebut, juga dianggap sebagai satu peubah, sehingga dapat digunakan sebagai bagian dari ungkapan. • Jika fungsi digunakan, fungsi selalu akan menghitung satu nilai perubah dalam hal ini nilai fungsi • Dalam fungsi tidak ada istilah parameter perubah, semua parameter dianggap sebagai parameter nilai. Bahasa Pemrograman Pascal Diktat Dasar Komputer dan Pemrograman T. Elektro FTI UAD 71 • Semua parameter diperlukan sebagai masukan pada fungsi tersebut dengan keluarannya adalah nama fungsi yang bertindak sebagai satu perubah. Bentuk umum suatu fungsi: FUNCTION Nama Daftar parameter formal : Tipe hasil; Bagian Deklarasi Begin Bagian Pernyataan End; dimana, Function : kata cadangan Pascal yang memberikan tanda bahwa deklarasi function dimulai. Nama : nama fungsi Daftar parameter formal : nama parameter yang akan dioperasikan di dalam fungsi. Tipe hasil : tipe data dari nilai fungsi Contoh 1 : Program Pangkat_Rekursif; Uses crt; Var a,z : real; b : integer; Procedure pangkatx:real; n:integer; var y:real; Var p:real; Begin if n=0 then y:=1 else if n0 then begin pangkatx,n-1,y; y:yx; end Bahasa Pemrograman Pascal Diktat Dasar Komputer dan Pemrograman T. Elektro FTI UAD 72 else begin pangkatx,n+1,y; y:yx; end; end; begin clrscr; writelData A: ; readlna; writeln; writelData B: ; readlnb; writeln; whilea0 or b0 do begin writeln; writea:5:2, pangkat,b:3=; pangkata,b,z; writez:5:2; writeln; writeln; writeData A: ; readlna; writeln; writeData B: ; readlnb; writeln; end; writeTekan Enter readln; end. Contoh 2 : Program Jumlahan; Uses crt; Var jum, x : integer; function jumlahn:integer:integer; Var i,s : integer; begin s:=0; for i:=1 to n do s:=s+i; jumlah:=s; end; begin clrscr; writelnMasukkan bilangan bulat 1 ...100; readlnx; Bahasa Pemrograman Pascal Diktat Dasar Komputer dan Pemrograman T. Elektro FTI UAD 73 jum:=jumlahx; writeln; writelnjumlah,x,suku pertama deret hitung = ,jum:6; readln; end. Contoh 3 : Program Pangkat_Rekursif2; Uses crt; Var a : real; b : integer; function pangkatx:real; n:integer:real; begin if n=0 then pangkat:=1 else if n0 then pangkat:=pangkatx,n-1x else pangkat:=pangkatx,n+1x; end; begin clrscr; writeData A: ; readlna; writeln; writeData B: ; readlnb; writeln; whilea0 or b0 do begin writeln; writea:5:2, pangkat,b:3,=; writepangkata,b:5:2; writeln; writeln; writeData A: ; readlna; writeln; writeData B: ; readlnb; writeln; end; writeTekan Enter; readln; end. Bahasa Pemrograman Pascal Diktat Dasar Komputer dan Pemrograman T. Elektro FTI UAD 74

7.8. Tipe Data Array