21
PROSEDUR PROSEDUR

PROSEDUR

Embed Size (px)

DESCRIPTION

PROSEDUR. Pendahuluan. Prosedur adalah suatu program terpisah dalam blok sendiri yang berfungsi sebagai subprogram (program bagian) Prosedur diawali dengan kata cadangan procedure di bagian deklarasi prosedur - PowerPoint PPT Presentation

Citation preview

Page 1: PROSEDUR

PROSEDURPROSEDUR

Page 2: PROSEDUR

Pendahuluan Prosedur adalah suatu program

terpisah dalam blok sendiri yang berfungsi sebagai subprogram (program bagian)

Prosedur diawali dengan kata cadangan procedure di bagian deklarasi prosedur

Prosedur dipanggil dan digunakan di dalam blok program lainnya dengan menyebutkan judul prosedurnya

Page 3: PROSEDUR

Alasan Penggunaan Prosedur

Prosedur banyak digunakan pada program yang terstruktur, karena;

1. Merupakan penerapan konsep program modular, yaitu memecah-mecah program yang rumit menjadi program-program bagian yang lebih sederhana dalam bentuk prosedur-prosedur

2. Untuk yang sering dilakukan berulang-ulang, cukup dituliskan sekali saja dalam prosedur dan dapat dipanggil atau dipergunakan sewaktu-waktu bila diperlukan

Page 4: PROSEDUR

Blok ProsedurPROGRAM Judul-program;

BEGIN

END.

PROCEDURE Judul-prosedur;BEGIN

END;

Page 5: PROSEDUR

Parameter Dalam Prosedur Nilai dalam suatu modul program Pascal

sifatnya lokal, artinya hanya dapat digunakan pada modul atau unit program yang bersangkutan saja, tidak dapat digunakan pada modul atau unit program lainnya.

Agar nilai-nilai variabel dapat digunakan di modul lainnya yang membutuhkannya, bisa dilakukan beberapa cara:

Dibuat bersifat global Dikirimkan sebagai parameter ke modul yang

membutuhkannya

Page 6: PROSEDUR

Variabel Dibuat Bersifat Global

1. Agar suatu nilai dapat bersifat global, maka harus dideklarasikan di atas modul yang akan menggunakannya

2. Dikirimkan sebagai parameter ke modul yang membutuhkannya

Page 7: PROSEDUR

PROCEDURE Kesatu;begin……….End;var A, B:

WORD;PROCEDURE Kedua;begin……..End;PROCEDURE Ketiga;begin……..End;begin……end.

var A, B: WORD;

PROCEDURE Kesatu;begin……….End;PROCEDURE Kedua;begin……..End;PROCEDURE Ketiga;begin……..End;begin……end.

Page 8: PROSEDUR

Pengiriman parameter Parameter yang dikirimkan dari modul utama

ke modul prosedur disebut parameter nyata (actual parameter) dan parameter yang ada dan dituliskan pada judul prosedur disebut parameter formal (formal parameter)

Proses pengiriman data lewat parameter nyata ke parameter formal disebut parameter passing

Parameter nyata dan parameter formal harus dengan tipe yang sama

Pameter dapat dikirimkan secara nilai (by value) atau secara acuan (by reference)

Page 9: PROSEDUR

Pengiriman parameter secara nilai Parameter formal akan berisi nilai yang

dikirimkan yang kemudian bersifat lokal di prosedur

Bila nilai parameter formal di prosedur berubah, tidak akan mempengaruhi nilai parameter nyata

Pengiriman secara nilai merupakan pengiriman searah (dari parameter nyata ke parameter formal)

Parameter-parameter yang digunakan dengan pengiriman secara nilai disebut parameter nilai

Page 10: PROSEDUR

Contoh :

Procedure Hitung(A,B : integer);

Var

C : integer;

Begin

C : = A + B;

Writeln(‘Nilai C =’ ,C);

End;

Var

X,Y : integer;

Begin

Write(‘Nilai X ?’); Readln(X);

Write(‘Nilai Y ?’); Readln(Y);

Hitung(X,Y);

End.

Page 11: PROSEDUR

Penjelasan:Prosedur dimulai dengan deklarasi prosedur dengan judul prosedur:Procedure Hitung(A,B: integer);

Varibel lokal yang hanya dipergunakan di prosedur dan tidak termasuk sebagai parameter formal (parameter nilai), harus didefinisikan sendiri, sbb;

VarC : integer;

Hubungan antara parameter formal di prosedur dengan parameter nyata di modul utama adalah sbb;

Procedure Hitung(A,B : integer);Hitung(X,Y)Terlihat bahwa nilai-nilai parameter nyata X dan Y di modul utama dikirimkan ke parameter formal A dan B di prosedur. Dengan demikian, nilai parameter A dan B di prosedur akan berisi nilai yang sama dengan parameter X dan Y di modul utama.

Page 12: PROSEDUR

Pengiriman parameter secara acuan

Perubahan-perubahan yang terjadi pada nilai parameter formal di prosedur akan mempengaruhi nilai parameter nyata

Parameter-parameter ini disebut variable parameter dan di deklarasi prosedur dengan kata cadangan Var:

PROCEDURE hitung(Var A, B, C: integer);

Page 13: PROSEDUR

Contoh;

Procedure Hitung(Var A,B,C : integer);

Begin

C : = A + B;

End; {Procedure Hitung}

Var

X,Y,Z : integer;

Begin

X : = 2; Y : = 3;

Hitung (X,Y,Z);

Writeln(‘X = ‘,X,’Y=’,Y,’Z =’,Z);

End.

Bila program dijalankan:

X = 2 Y = 3 Z = 5

Page 14: PROSEDUR

Pengiriman parameter sebagian secara nilai sebagian secara acuan

Parameter yang hanya dibutuhkan pada prosedur saja dapat dikirimkan secara nilai dan yang ingin dikirimkan balik dapat dilakukan secara acuan:

PROCEDURE Hitung(A, B: integer; Var C: integer);

Page 15: PROSEDUR

Tipe parameter formal Tipe parameter formal harus dideklarasikan Parameter yang diijinkan adalah berupa

variabel atau konstanta, sedang pada Turbo Pascal prosedur dan fungsi tidak diijinkan sebagai parameter formal (Standar Pascal mengijinkan)

Tipe sederhana seperti: Integer, Byte, Char, Real, dan Boolean dapat langsung digunakan sebagai tipe parameter formal

Tipe kompleks seperti String, Record dan Array tidak dapat digunakan langsung tapi harus dideklarasikan dahulu di bagian deklarasi Type

Page 16: PROSEDUR

Contoh

SALAH:Procedure Urutkan(Nilai: array[1..100] of integer);Procedure Panjang(Nama: string[30]);BENAR:Type

Elemen = array[1..100] of integer;Huruf = string[30];

Procedure Urutkan(Nilai: elemen);Procedure Panjang(Nama: Huruf);

Page 17: PROSEDUR

Prosedur Lain Prosedur memanggil prosedur lain Prosedur tersarang Prosedur memanggil dirinya sendiri

Proses dari suatu program bagian yang memanggil dirinya sendiri dikenal dengan isitilah recursion

Meski proses ini merupakan algoritma yang baik, tapi butuh banyak memori

Acuan FORWARD digunakan untuk mendeklarasikan di muka judul

prosedur terpisah dari bloknya Judul prosedur yang berisi parameter terpisah ini

merupakan judul yang semestinya dan dideklarasikan dengan menambahkan kata cadangan FORWARD

Page 18: PROSEDUR

Prosedur Standar Exit

digunakan untuk keluar dari suatu blok. Halt

digunakan untuk menghentikan proses program baik di program bagian maupun di program utama.

Movedigunakan untuk menyalinkan suatu blok sebanyak count byte memori dari blok dimulai byte pertama source dan disalinkan ke byte pertama dest.

FillChardigunakan untuk mengisi sejumlah byte nilai ke dalam suatu variabel.

Page 19: PROSEDUR

FUNGSIFUNGSI

Page 20: PROSEDUR

Struktur Function

Function <identifier> (<daftar parameter>) : <tipe data>;< deklarasi variabel, konstanta, tipe data, procedure atau

function >begin

<statemen 1><statemen 2>. . .<statemen N>

end;

Page 21: PROSEDUR

Perbedaan Fungsi dan Prosedur

Pada fungsi, nilai yg dikirimkan balik terdapat nama fungsinya(kalau pada prosedur pada parameter yang dikirimkan secara acuan). Karena nilai balik berada dinama fungsi, maka fungsi tersebut dapat langsung digunakan untuk dicetak hasilnya.

Pada prosedur, nama prosedur tersebut tidak dapat digunakan langsung, yang dapat langsung digunakan adalah parameternya yang mengandung nilai balik.