algoritma pemrograman - ifa's · pada bahasa pemrograman, seperti halnya parameter keluaran,...

35
S1 Teknik Informatika-Unijoyo 1 Algoritma Pemrograman Pertemuan Ke-8 (Prosedur) :: Noor Ifada ::

Upload: vuongtuyen

Post on 17-Sep-2018

265 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Algoritma Pemrograman - Ifa's · Pada bahasa pemrograman, seperti halnya parameter keluaran, parameter masukan/keluaran juga sering dinamakan parameter acuan (reference parameter

S1 Teknik Informatika-Unijoyo 1

Algoritma Pemrograman

Pertemuan Ke-8(Prosedur)

:: Noor Ifada ::

Page 2: Algoritma Pemrograman - Ifa's · Pada bahasa pemrograman, seperti halnya parameter keluaran, parameter masukan/keluaran juga sering dinamakan parameter acuan (reference parameter

S1 Teknik Informatika-Unijoyo 2

Sub Pokok Bahasan

PendahuluanModularisasi ProgramPendefinisian ProsedurNama Global dan Nama LokalParameter

Page 3: Algoritma Pemrograman - Ifa's · Pada bahasa pemrograman, seperti halnya parameter keluaran, parameter masukan/keluaran juga sering dinamakan parameter acuan (reference parameter

S1 Teknik Informatika-Unijoyo 3

Pendahuluan

• Seringkali dalam membuat pembuatan program yang berukuran besar, program tersebut dipecah menjadi beberapa subprogram yang lebih kecil. Tiap subprogram, yang disebut modul,dapat dipasangkan ke program lain yang membutuhkannya.

• Teknik pemrograman seperti ini dinamakan teknik pemrograman modular. Beberapa bahasa pemrograman menamakan modul dengan sebutan rutin (routine), prosedur, atau fungsi.

Page 4: Algoritma Pemrograman - Ifa's · Pada bahasa pemrograman, seperti halnya parameter keluaran, parameter masukan/keluaran juga sering dinamakan parameter acuan (reference parameter

S1 Teknik Informatika-Unijoyo 4

Modularisasi Program

Keuntungan:1. Menghindari penulisan teks program

yang sama secara berulang kali untuk aktivitas yang harus dilakukan lebih dari satu kali

2. Memberikan kemudahan menulis dan menemukan kesalahan (debug) program

Page 5: Algoritma Pemrograman - Ifa's · Pada bahasa pemrograman, seperti halnya parameter keluaran, parameter masukan/keluaran juga sering dinamakan parameter acuan (reference parameter

S1 Teknik Informatika-Unijoyo 5

Jenis Modul Program

1. prosedur (procedure), dan 2. fungsi (function)

Struktur setiap modul tersebut pada hakikatnya sama dengan struktur algoritma biasa, yaitu ada bagian Judul (header) yang berisi nama modul, bagian Deklarasi, dan badan (body) program yang berisi instruksi yang akan dilaksanakan.

Page 6: Algoritma Pemrograman - Ifa's · Pada bahasa pemrograman, seperti halnya parameter keluaran, parameter masukan/keluaran juga sering dinamakan parameter acuan (reference parameter

S1 Teknik Informatika-Unijoyo 6

Pendefinisian Prosedur

• Prosedur adalah modul program yang mengerjakan tugas/aktivitas yang spesifik dan hasilnya diperoleh dengan membandingkan keadaan awal dan keadaan akhir pada pelaksanaan sebuah prosedur

• Oleh karena itu, pada setiap prosedur, keadaan awal (K.awal) harus didefinisikan sebelum rangkaian instruksi di dalam prosedur dilaksanakan dan keadaan akhir (K.akhir) yang diharapkan setelah rangkaian instruksi dilaksanakan

Page 7: Algoritma Pemrograman - Ifa's · Pada bahasa pemrograman, seperti halnya parameter keluaran, parameter masukan/keluaran juga sering dinamakan parameter acuan (reference parameter

S1 Teknik Informatika-Unijoyo 7

Struktur Prosedur

• bagian Judul (header)terdiri atas nama prosedur dan komentar yang menjelaskan spesifikasi prosedur tersebut,

• bagian Deklarasi• badan (body) prosedur

Page 8: Algoritma Pemrograman - Ifa's · Pada bahasa pemrograman, seperti halnya parameter keluaran, parameter masukan/keluaran juga sering dinamakan parameter acuan (reference parameter

S1 Teknik Informatika-Unijoyo 8

Notasi algoritma untuk mendefinisikan struktur prosedur

(tanpa parameter)

Page 9: Algoritma Pemrograman - Ifa's · Pada bahasa pemrograman, seperti halnya parameter keluaran, parameter masukan/keluaran juga sering dinamakan parameter acuan (reference parameter

S1 Teknik Informatika-Unijoyo 9

• Contoh: Prosedur dan contoh program utama untuk menghitung nilai rata-rata N buah bilangan bulat yang dibaca dari piranti masukan. Nilai rata-rata seluruh bilangan dicetak ke piranti keluaran.

Algoritma RATA_RATA_BILANGAN_BULAT{ Program utama untuk menghitung nilai rata-rata N buah bilangan bulat. }DEKLARASI (* Program Utama *){ tidak ada }

procedure HitungRataRata{Menghitung nilai rata-rata N buah bilangan bulat. N>0}

DEKLARASI (* Prosedur *)x : integer { data bilangan bulat }N : integer { banyaknya data bilangan bulat, N > 0 }k : integer { pencacah banyak bilangan }jumlah : integer { jumlah seluruh bilangan }rata : real { nilai rata-rata seluruh bilangan }

DESKRIPSI : (* Prosedur *)read(N)

jumlah ← 0 { inisialisasi penjumlah }

for k ← 1 to N do read(x)

jumlah ← jumlah + xendfor

rata ← jumlah/Nwrite(‘Nilai rata-rata = ‘,rata)

DESKRIPSI : (Program Utama *)write(‘Menghitung rata-rata N buah bilangan bulat’)HitungRataRata

Page 10: Algoritma Pemrograman - Ifa's · Pada bahasa pemrograman, seperti halnya parameter keluaran, parameter masukan/keluaran juga sering dinamakan parameter acuan (reference parameter

S1 Teknik Informatika-Unijoyo 10

• Prosedur diakses dengan cara memangil namanya dari program pemanggil (program utama atau modul program lain): Namaprosedur

• Ketika NamaProsedur dipanggil, kendali program berpindah secara otomatis ke prosedur tersebut. Instruksi di dalam badan prosedur dilaksanakan. Setelah semua instruksi selesai dilaksanakan, kendali program berpindah secara otomatis ke instruksi sesudah pemanggilan prosedur

Page 11: Algoritma Pemrograman - Ifa's · Pada bahasa pemrograman, seperti halnya parameter keluaran, parameter masukan/keluaran juga sering dinamakan parameter acuan (reference parameter

S1 Teknik Informatika-Unijoyo 11

Program RATA_RATA_BILANGAN_BULAT;procedure HitungRataRata;varx, N, k, jumlah : integer;rata : real;begin

write(‘Masukkan banyaknya data ? ’); readln(N);jumlah:=0;for k:= 1 to N dobegin

write(‘Nilai x : ? ’);readln(x);jumlah:=jumlah+x;

end;rata:= jumlah/N; writeln(‘Nilai rata-rata = ‘,rata);

end;

beginwriteln(‘Menghitung rata-rata N buah bilangan bulat’);HitungRataRata;

end.

Page 12: Algoritma Pemrograman - Ifa's · Pada bahasa pemrograman, seperti halnya parameter keluaran, parameter masukan/keluaran juga sering dinamakan parameter acuan (reference parameter

S1 Teknik Informatika-Unijoyo 12

Nama Global & Nama Lokal

• Nama-nama (konstanta, peubah, tipe, dan lain-lain) yang dideklarasikan di dalam bagian Deklarasi prosedur bersifat “lokal” dan hanya dapat digunakan di dalam prosedur yang melingkupinya saja

• Sedangkan nama-nama yang dideklarasikan di dalam program utama bersifat “global” dan dapat digunakan di bagian manapun di dalam program, baik di dalam program utama maupun di dalam prosedur

Page 13: Algoritma Pemrograman - Ifa's · Pada bahasa pemrograman, seperti halnya parameter keluaran, parameter masukan/keluaran juga sering dinamakan parameter acuan (reference parameter

S1 Teknik Informatika-Unijoyo 13

• Contoh: prosedur HitungRataRata dan program utama RATA_RATA_BILANGAN_BULAT yang sudah dimodifikasi dengan menempatkan N dan rata sebagai nama peubah di dalam bagian deklarasi nama program utama.

Algoritma RATA_RATA_BILANGAN_BULAT{ Program utama untuk menghitung nilai rata-rata }

DEKLARASI (* Program utama *)N : integer { banyaknya data bilangan bulat, N > 0 }rata : real { nilai rata-rata seluruh bilangan }

procedure HitungRataRata{Menghitung nilai rata-rata N buah bilangan bulat. N>0}DEKLARASI (* Prosedur *)x : integerk : integerjumlah : integer

DESKRIPSI : (* Prosedur *)

jumlah ← 0 { inisialisasi }for k ← 1 to N doread(x)

jumlah ← jumlah + xendfor

rata ← jumlah/N

DESKRIPSI : (* Program Utama *)read(N)write(‘Menghitung rata-rata N buah bilangan bulat’)HitungRataRatawrite(‘Nilai rata-rata = ‘,rata)

Page 14: Algoritma Pemrograman - Ifa's · Pada bahasa pemrograman, seperti halnya parameter keluaran, parameter masukan/keluaran juga sering dinamakan parameter acuan (reference parameter

S1 Teknik Informatika-Unijoyo 14

Program RATA_RATA_BILANGAN_BULAT;varN : integer;rata : real;procedure HitungRataRata;varx, k, jumlah : integer;beginjumlah:=0;for k:= 1 to N dobeginwrite(‘Nilai x : ? ’);readln(x);jumlah:=jumlah + x;

end;rata:= jumlah/N;

end;beginwrite(‘Masukkan banyaknya data ? ’); readln(N);writeln(‘Menghitung rata-rata N buah bilangan bulat’);HitungRataRata; writeln(‘Nilai rata-rata = ‘,rata);

end.

Page 15: Algoritma Pemrograman - Ifa's · Pada bahasa pemrograman, seperti halnya parameter keluaran, parameter masukan/keluaran juga sering dinamakan parameter acuan (reference parameter

S1 Teknik Informatika-Unijoyo 15

• Peubah N dan rata bersifat global dan dapat digunakan di dalam prosedur HitungRataRata karena dideklarasikan dalam bagian Deklarasi program utama.

• Sedangkan peubah x, k, dan jumlah bersifat lokal dan hanya dikenal dan digunakan di dalam lingkup prosedur saja karena dideklarasikan dalam prosedur HitungRataRata

Page 16: Algoritma Pemrograman - Ifa's · Pada bahasa pemrograman, seperti halnya parameter keluaran, parameter masukan/keluaran juga sering dinamakan parameter acuan (reference parameter

S1 Teknik Informatika-Unijoyo 16

Parameter

• Kebanyakan program memerlukan pertukaran informasi antara prosedur (atau fungsi) dan titik dimana ia dipanggil. Penggunaan parameter menawarkan mekanisme penukaran informasi tersebut. Tiap item data ditransfer antara parameter aktual dan parameter formal yang bersesuaian

• Parameter aktual adalah parameter yang disertakan ketika pemanggilan, sedangkan paramater formal adalah parameter yang dideklarasikan di bagian header prosedur itu sendiri

• Ketika prosedur dipanggil, parameter aktual menggantikan parameter formal

Page 17: Algoritma Pemrograman - Ifa's · Pada bahasa pemrograman, seperti halnya parameter keluaran, parameter masukan/keluaran juga sering dinamakan parameter acuan (reference parameter

S1 Teknik Informatika-Unijoyo 17

Notasi algoritma untuk mendefinisikan struktur prosedur

dengan parameter

Page 18: Algoritma Pemrograman - Ifa's · Pada bahasa pemrograman, seperti halnya parameter keluaran, parameter masukan/keluaran juga sering dinamakan parameter acuan (reference parameter

S1 Teknik Informatika-Unijoyo 18

• Prosedur dengan parameter diakses dengan cara memanggil namanya dari program pemanggil (program utama atau modul program lain) dengan disertai parameter aktualnya:Namaprosedur(daftar parameter aktual)

• Berdasarkan maksud penggunaannya, terdapat tiga jenis parameter formal yang disertakan dalam prosedur:1.Parameter Masukan (input parameter)

2.Parameter Keluaran (output parameter)

3.Parameter masukan/keluaran (input/output parameter)

Page 19: Algoritma Pemrograman - Ifa's · Pada bahasa pemrograman, seperti halnya parameter keluaran, parameter masukan/keluaran juga sering dinamakan parameter acuan (reference parameter

S1 Teknik Informatika-Unijoyo 19

Parameter Masukan (input parameter)

• Parameter masukan adalah parameter yang nilainya berlaku sebagai masukan untuk prosedur

• Pada bahasa pemrograman, istilah parameter masukan ini sering dinamakan parameter nilai (value parameter atau parameter by value)

• Pada parameter masukan, nilai (value) parameter aktual diisikan (assign) ke dalam parameter formal yang bersesuaian. Nilai ini digunakan di dalam badan prosedur yang bersangkutan. Nilai yang dinyatakan oleh parameter masukan tidak dapat dikirim dalam arah sebaliknya. Itulah alasan mengapa parameter jenis ini diacu sebagai parameter masukan

• Perubahan nilai parameter di dalam badan prosedur tidak mengubah nilai parameter aktual. Karena yang dipentingkan adalah nilainya, maka nama parameter aktual boleh berbeda dengan nama parameter formal yang bersesuaian.

Page 20: Algoritma Pemrograman - Ifa's · Pada bahasa pemrograman, seperti halnya parameter keluaran, parameter masukan/keluaran juga sering dinamakan parameter acuan (reference parameter

S1 Teknik Informatika-Unijoyo 20

• Contoh: Prosedur dan program utama untuk menghitung nilai rata-rata N buah bilangan bulat ditulis kembali prosedur dengan menggunakan parameter masukan.

Algoritma RATA_RATA_BILANGAN_BULAT{ Program utama untuk menghitung nilai rata-rata }

DEKLARASI (* Program utama *)Ndata : integer { banyaknya data bilangan bulat }

procedure HitungRataRata(input N : integer){Menghitung nilai rata-rata N buah bilangan bulat}{K.awal: N berisi banyaknya bilangan bulat, N > 0}{K.akhir: rata-rata seluruh bilangan dicetak}

DEKLARASI (* Prosedur *)x, k, jumlah : integerrata : real { nilai rata-rata seluruh bilangan }

DESKRIPSI : (* Prosedur *)

jumlah ← 0 { inisialisasi penjumlah }for k ← 1 to N do

read(x)

jumlah ← jumlah + xendfor

rata ← jumlah/Nwrite(rata)

DESKRIPSI : (* Program Utama *)write(‘Menghitung rata-rata N buah bilangan bulat’)read(Ndata)HitungRataRata(Ndata)

Page 21: Algoritma Pemrograman - Ifa's · Pada bahasa pemrograman, seperti halnya parameter keluaran, parameter masukan/keluaran juga sering dinamakan parameter acuan (reference parameter

S1 Teknik Informatika-Unijoyo 21

Program RATA_RATA_BILANGAN_BULAT;varNdata : integer;

procedure HitungRataRata(N : integer);varx, k, jumlah : integer;rata : real;beginjumlah:=0;for k:= 1 to N dobeginwrite(‘Nilai x : ? ’);readln(x);jumlah:=jumlah+x;

end;rata:= jumlah/N;writeln(‘Nilai rata-rata = ‘,rata);

end;

beginwrite(‘Masukkan banyaknya data ? ’); readln(Ndata);writeln(‘Menghitung rata-rata N buah bilangan bulat’);HitungRataRata(Ndata);end.

Page 22: Algoritma Pemrograman - Ifa's · Pada bahasa pemrograman, seperti halnya parameter keluaran, parameter masukan/keluaran juga sering dinamakan parameter acuan (reference parameter

S1 Teknik Informatika-Unijoyo 22

Parameter Keluaran (output parameter)

• Parameter keluaran adalah parameter yang menampung keluaran yang dihasilkan oleh prosedur

• Pada bahasa pemrograman, istilah parameter keluaran sering dinamakan parameter acuan (reference parameter atau parameter by reference)

• Bila prosedur yang mengandung parameter keluaran dipanggil, nama parameter aktual di dalam program pemanggil menggantikan nama parameter formal yang bersesuaian di dalam prosedur. Jadi, nama parameter aktual akan digunakan selama pelaksanaan prosedur

• Karena nama parameter merupakan suatu lokasi di memori, maka bila di dalam prosedur parameter aktual diisi suatu nilai, nilai ini akan tetap berada di dalam parameter aktual meskipun prosedur selesai dilaksanakan. Jadi, setelah pemanggilan, parameter aktual berisi suatu nilai yang merupakan keluaran dari prosedur tersebut

Page 23: Algoritma Pemrograman - Ifa's · Pada bahasa pemrograman, seperti halnya parameter keluaran, parameter masukan/keluaran juga sering dinamakan parameter acuan (reference parameter

S1 Teknik Informatika-Unijoyo 23

• Contoh: Prosedur dan program utama untuk menghitung nilai rata-rata N buah bilangan bulat ditulis kembali prosedur dengan nilai rata-rata merupakan keluaran prosedur

Algoritma RATA_RATA_BILANGAN_BULAT{ Program utama untuk menghitung nilai rata-rata }

DEKLARASI (* Program Utama *)Ndata : integerrerata : real

procedure HitungRataRata(input N:integer, output rata:real){ Menghitung nilai rata-rata N buah bilangan bulat }{ K.awal: N berisi banyaknya bilangan bulat, N > 0 }{ K.akhir: rata berisi rata-rata seluruh bilangan }

DEKLARASI (* Prosedur *)x, k, jumlah : integer

DESKRIPSI : (* Prosedur *)jumlah ← 0 { inisialisasi penjumlah }for k ← 1 to N do

read(x)jumlah ← jumlah + x

endforrata ← jumlah/N

DESKRIPSI : (* Program utama *)write(‘Menghitung rata-rata N buah bilangan bulat’)read(Ndata)HitungRataRata(Ndata,rerata)write(rerata)

Page 24: Algoritma Pemrograman - Ifa's · Pada bahasa pemrograman, seperti halnya parameter keluaran, parameter masukan/keluaran juga sering dinamakan parameter acuan (reference parameter

S1 Teknik Informatika-Unijoyo 24

Program RATA_RATA_BILANGAN_BULAT;varNdata : integer;rerata : real;

procedure HitungRataRata(N : integer; var rata : real);var

x, k, jumlah : integer;begin

jumlah:=0;for k:= 1 to N dobegin

write(‘Nilai x : ? ’);readln(x);jumlah := jumlah + x;

end;rata:= jumlah/N;

end;

beginwrite(‘Masukkan banyaknya data ? ’); readln(Ndata);writeln(‘Menghitung rata-rata N buah bilangan bulat’);HitungRataRata(Ndata,rerata);writeln(‘Nilai rata-rata = ‘,rerata);

end.

Page 25: Algoritma Pemrograman - Ifa's · Pada bahasa pemrograman, seperti halnya parameter keluaran, parameter masukan/keluaran juga sering dinamakan parameter acuan (reference parameter

S1 Teknik Informatika-Unijoyo 25

Parameter masukan/keluaran (input/output parameter)

• Parameter masukan/keluaran adalah parameter yang berfungsi sebagai masukan sekaligus keluaran bagi prosedur tersebut. Pada bahasa pemrograman, seperti halnya parameter keluaran, parameter masukan/keluaran juga sering dinamakan parameter acuan (reference parameter atau parameter by reference).

• Parameter masukan digunakan pada situasi di mana informasi dikirim hanya dari titik pemanggilan prosedur ke prosedur itu sendiri. Sedangkan parameter keluaran hanya mengirim informasi dari prosedur ke titik pemanggilan prosedur. Pada kebanyakan aplikasi, informasi juga harus dikirim dalam kedua arah, jadi prosedur juga harus dapat mengakomodasi baik masukan dari dan keluaran ke blok program pemanggil (parameter masukan/keluaran umumnya digunakan pada situasi seperti ini)

Page 26: Algoritma Pemrograman - Ifa's · Pada bahasa pemrograman, seperti halnya parameter keluaran, parameter masukan/keluaran juga sering dinamakan parameter acuan (reference parameter

S1 Teknik Informatika-Unijoyo 26

• Seperti halnya pada parameter keluaran, bila prosedur yang mengandung parameter keluaran dipanggil, nama parameter aktual di dalam program pemanggil menggantikan (substitute) nama parameter formal yang bersesuaian di dalam prosedur. Selain itu, isi atau nilai parameter aktual juga ikut disalin ke dalam parameter formal. Jadi, nama dan nilai parameter aktual digunakan di seluruh bagian prosedur. Akibat penggunaan parameter masukan/keluaran, bila parameter aktual diubah nilainya di dalam badan prosedur, maka sesudah pemanggilan prosedur nilai parameter aktual di titik pemanggilan juga berubah. Ini berbeda dengan parameter masukan, yang dalam hal ini meskipun nilai parameter aktual di dalam badan prosedur diubah, nilai parameter aktual tersebut tidak berubah di titik pemanggilan

• Parameter masukan/keluaran dideklarasikan di dalam header prosedur, sebagaimana parameter masukan. Tetapi, parameter keluaran harus dideklarasikan dengan kata kunci input/output

• Hal lain yang harus diperhatikan pada jenis parameter masukan/keluaran ini adalah parameter aktual harus berupa peubah, tidak boleh berupa tetapan atau ekspresi

Page 27: Algoritma Pemrograman - Ifa's · Pada bahasa pemrograman, seperti halnya parameter keluaran, parameter masukan/keluaran juga sering dinamakan parameter acuan (reference parameter

S1 Teknik Informatika-Unijoyo 27

• Contoh: Prosedur dan program utama yang memperlihatkan efek penggunaan parameter masukan dan perbandingannya dengan parameter masukan/keluaran:

Algoritma MENAMBAH_DUA{Program yang memperlihatkan efek penggunaan parametermasukan}DEKLARASI (* Program Utama *)a,b : integerprocedure TambahDua(input x,y : integer){ Menambahkan nilai x dan y masing-masing dengan 2 }{ K.awal: x dan y sudah berisi }{ K.akhir: nilai x dan y masing-masing bertambah 2 }DEKLARASI (* Prosedur *){ tidak ada }DESKRIPSI : (* Prosedur *)x ← x + 2y ← y + 2write(‘Nilai x dan y di akhir prosedur : ’)write(‘ x = ‘, x)write(‘ y = ‘, y)

DESKRIPSI : (* Program Utama *)a ← 15b ← 10write(‘Nilai a dan b sebelum pemanggilan : ’)write(‘ a = ‘, a)write(‘ b = ‘, b)TambahDua(a,b)write(‘Nilai a dan b sesudah pemanggilan : ’)write(‘ a = ‘, a)write(‘ b = ‘, b)

Page 28: Algoritma Pemrograman - Ifa's · Pada bahasa pemrograman, seperti halnya parameter keluaran, parameter masukan/keluaran juga sering dinamakan parameter acuan (reference parameter

S1 Teknik Informatika-Unijoyo 28

Program MENAMBAH_DUA;vara,b: integer;

procedure TambahDua(x,y : integer);begin

x := x + 2; y := y + 2;writeln(‘Nilai x dan y di akhir prosedur : ’);writeln(‘ x = ‘, x); writeln(‘ y = ‘, y);

end;

begina:=15; b:=10;writeln(‘Nilai a dan b sebelum pemanggilan : ’);writeln(‘ a = ‘, a); writeln(‘ b = ‘, b);TambahDua(a,b);writeln(‘Nilai a dan b sesudah pemanggilan : ’);writeln(‘ a = ‘, a); writeln(‘ b = ‘, b);

end.

Page 29: Algoritma Pemrograman - Ifa's · Pada bahasa pemrograman, seperti halnya parameter keluaran, parameter masukan/keluaran juga sering dinamakan parameter acuan (reference parameter

S1 Teknik Informatika-Unijoyo 29

• Hasil algoritma MENAMBAH_DUA dengan penggunaan parameter masukan adalah:– Nilai a dan b sebelum pemanggilan :

a = 15b = 10

– Nilai x dan y di akhir prosedur :a = 17b = 12

– Nilai a dan b sesudah pemanggilan :a = 15b = 10

• Jadi, setelah pemanggilan prosedur, nilai a dan b tidak berubah

Page 30: Algoritma Pemrograman - Ifa's · Pada bahasa pemrograman, seperti halnya parameter keluaran, parameter masukan/keluaran juga sering dinamakan parameter acuan (reference parameter

S1 Teknik Informatika-Unijoyo 30

• Contoh: Prosedur dan program utama dengan parameter berjenis masukan/keluaran:

Algoritma MENAMBAH_DUA{ Program yang memperlihatkan efek penggunaan parameter masukan/keluaran }

DEKLARASIa,b : integer

procedure TambahDua(input/output x,y : integer){ Menambahkan nilai x dan y masing-masing dengan 2 }{ K.awal: x dan y sudah berisi }{ K.akhir: nilai x dan y masing-masing bertambah 2 }

DEKLARASI{ tidak ada }

DESKRIPSI :x ← x + 2y ← y + 2write(‘Nilai x dan y di akhir prosedur : ’)write(‘ x = ‘, x)write(‘ y = ‘, y)

DESKRIPSI :a ← 15b ← 10write(‘Nilai a dan b sebelum pemanggilan : ’)write(‘ a = ‘, a)write(‘ b = ‘, b)TambahDua(a,b)write(‘Nilai a dan b sesudah pemanggilan : ’)write(‘ a = ‘, a)write(‘ b = ‘, b)

Page 31: Algoritma Pemrograman - Ifa's · Pada bahasa pemrograman, seperti halnya parameter keluaran, parameter masukan/keluaran juga sering dinamakan parameter acuan (reference parameter

S1 Teknik Informatika-Unijoyo 31

Program MENAMBAH_DUA;var

a,b: integer;

procedure TambahDua(var x,y : integer);begin

x := x + 2; y := y + 2;writeln(‘Nilai x dan y di akhir prosedur : ’);writeln(‘ x = ‘, x); writeln(‘ y = ‘, y);

end;

begina:=15; b:=10;writeln(‘Nilai a dan b sebelum pemanggilan : ’);writeln(‘ a = ‘, a); writeln(‘ b = ‘, b);TambahDua(a,b);writeln(‘Nilai a dan b sesudah pemanggilan : ’);writeln(‘ a = ‘, a); writeln(‘ b = ‘, b);

end.

Page 32: Algoritma Pemrograman - Ifa's · Pada bahasa pemrograman, seperti halnya parameter keluaran, parameter masukan/keluaran juga sering dinamakan parameter acuan (reference parameter

S1 Teknik Informatika-Unijoyo 32

• Hasil algoritma MENAMBAH_DUA dengan penggunaan parameter masukan/keluaran adalah:– Nilai a dan b sebelum pemanggilan :

a = 15b = 10

– Nilai x dan y di akhir prosedur :a = 17b = 12

– Nilai a dan b sesudah pemanggilan :a = 17b = 12

• Akibat penggunaan x dan y sebagai parameter masukan/keluaran, bila nilai a dan b diubah di dalam prosedur TambahDua, maka perubahan ini dibawa ke titik pemanggilan prosedur TambahDua setelah pemanggilan prosedur, nilai a dan b berubah

Page 33: Algoritma Pemrograman - Ifa's · Pada bahasa pemrograman, seperti halnya parameter keluaran, parameter masukan/keluaran juga sering dinamakan parameter acuan (reference parameter

S1 Teknik Informatika-Unijoyo 33

Summary [1]

• Keuntungan modularisasi program adalah menghindari penulisan teks program yang sama secara berulang kali untuk aktivitas yang harus dilakukan lebih dari satu kali dan memberikan kemudahan menulis dan menemukan kesalahan (debug) program

• Terdapat 2 jenis modul program, yaitu: prosedur (procedure) dan fungsi (function)

• Prosedur adalah modul program yang mengerjakan tugas/aktivitas yang spesifik dan hasilnya diperoleh dengan membandingkan keadaan awal dan keadaan akhir pada pelaksanaan sebuah prosedur

• Struktur Prosedur terdiri dari: bagian Judul (header), bagian Deklarasi dan badan (body) prosedur

Page 34: Algoritma Pemrograman - Ifa's · Pada bahasa pemrograman, seperti halnya parameter keluaran, parameter masukan/keluaran juga sering dinamakan parameter acuan (reference parameter

S1 Teknik Informatika-Unijoyo 34

• Nama-nama (konstanta, peubah, tipe, dan lain-lain) yang dideklarasikan di dalam bagian Deklarasi prosedur bersifat “lokal” dan hanya dapat digunakan di dalam prosedur yang melingkupinya saja. Sedangkan nama-nama yang dideklarasikan di dalam program utama bersifat “global” dan dapat digunakan di bagian manapun di dalam program, baik di dalam program utama maupun di dalam prosedur

• Penggunaan parameter menawarkan mekanisme penukaran informasi antara prosedur (atau fungsi) dan titik dimana ia dipanggil. Tiap item data ditransfer antara parameter aktual (parameter yang disertakan ketika pemanggilan) dan parameter formal (parameter yang dideklarasikan di bagian header prosedur itu sendiri) yang bersesuaian. Ketika prosedur dipanggil, parameter aktual menggantikan parameter formal

• Terdapat 3 jenis parameter formal yang disertakan dalam prosedur: Parameter Masukan (input parameter), Parameter Keluaran (output parameter) dan Parameter masukan/keluaran (input/output parameter)

Summary [2]

Page 35: Algoritma Pemrograman - Ifa's · Pada bahasa pemrograman, seperti halnya parameter keluaran, parameter masukan/keluaran juga sering dinamakan parameter acuan (reference parameter

S1 Teknik Informatika-Unijoyo 35

Daftar Pustaka

• Jogiyanto HM [1989]. Turbo Pascal, Andi Offset, Yogyakarta.

• Noor Ifada, ST [2005]. Diktat Matakuliah Algoritma Pemrograman, Hibah Kompetisi A1, Jurusan Teknik Informatika, Universitas Trunojoyo.

• Rinaldi Munir [2003]. Algoritma dan Pemrograman dengan Pascal dan C edisi Kedua, Penerbit Informatika, Bandung.