dasar-dasar pemrograman
DESCRIPTION
Dasar-Dasar Pemrograman. Prosedur dan Fungsi. Definisi. Prosedur dan fungsi adalah subprogram terpisah dalam blok sendiri yang merupakan bagian dari program utama. Prosedur dan fungsi diletakkan pada bagian deklarasi program. Prosedur. Menggunakan reserved word procedure . Bentuk: - PowerPoint PPT PresentationTRANSCRIPT
Dasar-Dasar Pemrograman
Prosedur dan Fungsi
Definisi
Prosedur dan fungsi adalah subprogram terpisah dalam blok sendiri yang merupakan bagian dari program utama.
Prosedur dan fungsi diletakkan pada bagian deklarasi program.
Prosedur
Menggunakan reserved word procedure.
Bentuk:
PROCEDURE nama;
atau
PROCEDURE nama (parameter formal:tipe data);
Prosedur
Bentuk:uses crt;var x:integer;
procedure coba;var y:real;begin … …end;
begin … …end.
Variabel x berlaku di semua program, sedangkan variabel y hanya berlaku di prosedur coba.
Prosedur dengan Parameter
Nilai di dalam suatu modul program sifatnya lokal, artinya hanya dapat digunakan pada modul yang bersangkutan saja, tidak dapat digunakan pada modul yang lain.
Supaya nilai variabel dapat digunakan di modul lainnya, maka dapat dilakukan dengan cara :Dibuat bersifat global: harus dideklarasikan di atas
modul yang menggunakannya.Dikirimkan sebagai parameter ke modul yang
membutuhkannya
Parameter
Terdapat dua jenis parameter:Parameter aktualParameter formal
Parameter Aktual
Parameter yang dikirim dari modul utama ke modul prosedur.
Parameter Formal
Parameter yang ada pada prosedur dan dituliskan pada judul prosedur.
Pengiriman Parameter
Terdapat 2 pengiriman parameter:Pengiriman berdasarkan referensi (call by
reference)Pengiriman berdasarkan nilai (call by value)
Pengiriman berdasarkan Nilai
Parameter formal yang ada di prosedur akan berisi nilai yang dikirimkan yang kemudian bersifat lokal di prosedur.
Pengiriman berdasarkan Nilai Ex.
uses crt;var x,y,jumlah:integer;
procedure hitung(a,b,jum:integer);begin jum:=a+b; writeln('Di dalam prosedur: ',a,'+',b,'=',jum);end;
begin clrscr; write('Masukkan nilai x = ');readln(x); write('Masukkan nilai y = ');readln(y); hitung(x,y,jumlah); writeln('Di luar prosedur: ',x,'+',y,'=',jumlah); readln;end.
Pengiriman berdasarkan Nilai Ex.
Hasil:
Masukkan nilai x = 4
Masukkan nilai y = 5
Di dalam prosedur: 4+5=9
Di luar prosedur: 4+5=0
Pengiriman berdasarkan Acuan
Perubahan-perubahan yang terjadi pada nilai parameter formal di prosedur akan mempengaruhi nilai parameter aktual.
Pengiriman berdasarkan Acuan Ex.
uses crt;var x,y,jumlah:integer;
procedure hitung(a,b:integer; var jum:integer);begin jum:=a+b; writeln('Di dalam prosedur: ',a,'+',b,'=',jum);end;
begin clrscr; write('Masukkan nilai x = ');readln(x); write('Masukkan nilai y = ');readln(y); hitung(x,y,jumlah); writeln('Di luar prosedur: ',x,'+',y,'=',jumlah); readln;end.
Pengiriman berdasarkan Acuan Ex.
Hasil:
Masukkan nilai x = 4
Masukkan nilai y = 5
Di dalam prosedur: 4+5=9
Di luar prosedur: 4+5=9
Fungsi
Menggunakan reserved word function.Fungsi hampir sama dengan prosedur, hanya
hasil fungsi harus dideklarasikan dengan tipe datanya.
Bentuk:
FUNCTION nama:tipe data hasil;
atau
FUNCTION nama (parameter formal:tipe data):tipe data hasil;
Contoh
uses crt;var x,y,jumlah:integer;
function hitung(a,b:integer):integer;begin hitung:=a+b;end;
begin clrscr; write('Masukkan nilai x = ');readln(x); write('Masukkan nilai y = ');readln(y); writeln(x,'+',y,'=',hitung(x,y)); readln;end.
Hasil:
Masukkan nilai x = 4
Masukkan nilai y = 5
4+5=9
Prosedur vs Fungsi
Nama fungsi harus digunakan untuk menampung hasil yang akan dikirimkan dari fungsi ke program.Contoh:function hitung (a,b:integer):integer;begin hitung:=a+b;end;
Jika prosedur, hasil dikirimkan dengan parameter yang dikirimkan secara acuan.
Prosedur vs Fungsi
Karena hasil berada di nama fungsi tersebut, maka fungsi dapat langsung digunakan untuk dicetak hasilnya pada program utama.Contoh:begin a:=4; b:=3; write(hitung(a,b)); readln;end.
Jika prosedur, nama prosedur tidak dapat langsung digunakan langsung, yang dapat langsung digunakan adalah parameternya yang mengandung nilai balik.