Jumat, 29 April 2011

SUBRUTIN

SUBRUTIN
PROSEDUR
Prosedur merupakan subprogram yang tidak selalu menghasilkan nilai, tetapi menghasilkan suatu efek netto. Efek netto diketahui dengan membandingkan keadaan awal dan keadaan akhir pada pelaksanaan sebuah prosedur.
Suatu prosedur dikenal berdasarkan nama prosedurnya, kemudian diikuti dengan parameter yang ditulis didalam tanda kurung, bila ada.
Bentuk umum penulisan prosedur:

PROCEDURE nama_prosedur (parameter_formal);
Var
……..
Begin
Pernyataan_1;
Pernyataan_2;
.
.
.
End;

Pemanggilan prosedur:
Prosedur dijalankan dengan cara memanggil namanya dari program utama.
a. Prosedur tanpa parameter
Nama_prosedur;
b. Prosedur dengan parameter
Nama_prosedur (parameter_aktual);

Contoh:
Program luas_persegi_panjang;
AAVar
P,L :Real;
Procedure Luas_pp (var panjang,lebar :real);
Var
Luas : real;
Begin
Luas:=panjang * lebar;
Writeln(‘Luas Persegi Panjang = ‘, Luas:5:2);
End;

Begin
Write(‘Masukkan panjang=); Readln(P);
Write(‘Masukkan lebar=); Readln(L);
Luas_pp (P,L);
End.

FUNGSI
Fungsi merupakan subprogram yang memberikan/ mengembalikan sebuah nilai tertentu (return value). Nilai hasil dikembalikan ke dalam nama fungsi, oleh karena itu nama fungsi juga sebagai variabel yang memiliki tipe data tertentu.

Bentuk umum penulisan fungsi:
FUNCTION nama_fungsi (parameter_formal) : tipe_data;
Var
……..
Begin
Pernyataan_1;
Pernyataan_2;
.
.
.
{return value}
End;

Pemanggilan fungsi:
Fungsi dijalankan dengan cara memanggil namanya dari program utama. Fungsi pada program utama diperlakukan seperti sebuah variabel yang menampung sebuah nilai hasil fungsi.
a. Fungsi tanpa parameter
Var := Nama_fungsi;
Atau
Writeln (nama_fungsi);
b. Fungsi dengan parameter
Var := Nama_ fungsi (parameter_aktual);
Atau
Writeln (nama_fungsi(parameter_aktual));

Contoh:
Program luas_persegi_panjang;
Var
P,L,Lp :Real;
Function Luas_pp (var panjang,lebar :real):Real;
Var
Luas : real;
Begin
Luas:=panjang * lebar;
Luas_pp := Luas;
End;

Begin
Write(‘Masukkan panjang=); Readln(P);
Write(‘Masukkan lebar=); Readln(L);
Lp := Luas_pp (P,L);
Writeln (‘Luas Persegi Panjang = ‘, Lp:5:2);
End.

REFERENSI:
zakarepmoe.blogspot.com/.../subrutin-prosedur-dan-fungsi.htm

Tidak ada komentar:

Posting Komentar