Kamis, 12 April 2012

contoh program Prosedur dan Fungsi


Perhatikan dan salinlah program di bawah ini :

program P0401;
{ Contoh Program pembuatan Prosedur }
uses Crt;
var
A,B: Integer; { variable global }
{ Prosedur mencari nilai maximum }
procedure Maximum;
var
max : Integer; { variable lokal }
begin
if A > B then
max := A
else
max := B;
PROCEDURE nama(daftar_parameter)
Bagian deklarasi / pengumuman;
Bagian pernyataan;
FUNCTION nama_fungsi(daftar_parameter ): tipe;
Bagian deklarasi / pengumuman;
Bagian pernyataan;

Writeln('Angka Terbesar adalah : ',max);
end; { Akhir Prosedur }
{ Program Utama }
begin
ClrScr;
Write('Masukkan angka Pertama : ');
Readln(A);
Write('Masukkan angka Kedua : ');
Readln(B);
while A <> 0 do
begin
Maximum; { pemanggilan prosedur }
Readln(A,B);
end;
end.

Kompilasi dan jalankan program tersebut. Prosedur Maximum
berfungsi untuk menentukan nilai maksimum dari 2 buah bilangan
bulat. Program tersebut merupakan contoh penerapan pembuatan
prosedur tanpa parameter. Amati nilai yang dihasilkan jika dimasukkan
data tertentu.
Untuk lebih memahami tentang fungsi, salinlah program di bawah
ini :

program P0402;
{ Contoh Program pembuatan Fungsi }
uses crt;
var
A,B : integer; { variable global }
{ Fungsi menentukan nilai Faktorial }
function Faktorial(N: Integer) : LongInt;
var
faktor, Hasil : integer; { variable lokal }
begin
if N <=1 then
faktorial :=1 {Pengembalian nilai }
else
begin
Hasil :=1;
for faktor := 2 to N do Hasil := Hasil * Faktor;
Faktorial := Hasil; { Pengembalian nilai }
end;
{ Program Utama }
begin
ClrScr;
Write('Masukkan sembarang bilangan : ');
Readln(A);
Modul 4 – Prosedur dan Fungsi 4-26
B:= faktorial(A); { pemanggilan fungsi }
Writeln('Faktorial ',A,' : ',B);
Readln;
end.

Kompilasi dan jalankan Program tersebut. Program tersebut
menerapkan penggunaan fungsi. Fungsi Faktorial hanya memakai
parameter nilai, dan karena sebuah fungsi, maka memiliki nilai
kembalian. Sehingga pemanggilan nama fungsi tersebut dapat berperan
seperti ungkapan.
Untuk lebih memahami prosedur, salinlah program di bawah ini :

program P0403;
uses Crt;
var
A: integer;
Procedure Flip(N:Integer); forward;
Procedure Flop(N:Integer);
begin
Writeln('Flop');
If N > 0 then Flip(N - 1);
end;
Procedure Flip(N:Integer);
begin
Writeln('Flip');
If N > 0 then Flop(N - 1);
end;
begin
ClrScr;
Write('Masukkan Banyak kata : ');
Readln(A);
A := A - 1;
Flip(A);
Readln;
end.

Kompilasi dan jalankan program tersebut lalu amatilah hasilnya.
Prosedur Flip dan Prosedur Flop di atas menampilkan kata ‘Flip’ dan
‘Flop’ secara bergantian sesuai dengan inputan banyak kata.
Deklarasi forward digunakan untuk mendeklarasikan Prosedur Flip di
atas prosedur Flop, sehingga pada saat prosedur Flop dijalankan dan
prosedur Flip dipanggil, prosedur Flip dapat dikenali.

Tidak ada komentar:

Poskan Komentar

Diberdayakan oleh Blogger.

Out Sponsor