Prosedur adalah serangkaian statemen yang digunakan untuk memecahkan sebuah masalah. Seperti halnya fungsi, prosedur juga memiliki nama dan parameter. Prosedur harus dideklarasikan terlebih dahulu sebelum dipanggil atau digunakan.

Aturan penulisan deklarasi prosedur adalah sebagai berikut

Procedure nama-prosedur (parameter input ; var parameter output);

Begin

   {statemen impelementasi prosedur (badan prosedur), hasil perhitungan yang dilakukan prosedur (jika ada), disimpan pada parameter output}

End;

Contoh 1: buatlah prosedur yang menuliskan bintang (*) sebanyak n kali, dimana n adalah parameter inputnya.

Penyelesaian:

Procedure tulisbintang (n:integer);{menuliskan bintang sebanyak n kali}

Var i : integer;

begin

for i:=1 to n do

write (‘*’);

writeln;

end;

keterangan: prosedur diatas hanya mempunyai parameter input (parameter nilai), yang berarti prosedur tersebut hanya menerima sebuah nilai dan tidak menghasilkan sebuah nilai lain.

 

Contoh 2: buatlah prosedur untuk menghitung gaya yang dihasilkan berdasar massa dan percepatan yang diketahui. Asumsikan massa dan percepatan adalah bertipe integer.

Analisisè parameter input prosedur yang akan dibuat adalah dua buah integer dan parameter outputnya adalah sebuah integer. Parameter input (parameter nilai) prosedur gaya adalah m dan a, sedangkan parameter outputnya (parameter variable) adalah f. parameter output adalah menyimpan nilai yang dihasilkan oleh prosedur.

Penyelesaian:

Procedure hit_gaya (m, a : integer); var f:integer;

Begin

f:= m * a;

end;

 

 

PROGRAM contoh_1;

VAR a,b,c : integer;

PROCEDURE maksimum;

VAR max : integer;

BEGIN

IF a>b THEN max := a ELSE max := b;

IF c>max THEN max := c;

WRITELN(max);

END;

BEGIN

READLN(a,b,c);

Maksimum

END.

 

PROGRAM CONTOH_2;

VAR p,l,t,vol,panj : real;

PROCEDURE kotak;

VAR v,pl : real;

BEGIN

v := p * l * t ;

pl := p + 2.0 * t;

writeln(v,pl);

END;

BEGIN

writeln(‘panjang’ : 10,’lebar’ : 10,’tinggi’ : 10);

readln(p,l,t);

kotak;

END.

 

program hitung_gaya;

var

massa, percepatan, gaya : integer;

procedure hit_gaya (m , a :integer ; f:integer);

begin

f : = m * a;

end;

{program utama}

Begin

Write(‘masukan nilai massa: ‘); readln(massa);

Write (‘masukan nilai percepatan: ‘); readln (percepatan);

Hit_gaya(massa,percepatan,gaya);

Write (‘gaya       :’,gaya);

End.

 

program hitung_faktorial;

uses wincrt;

procedure faktorial(n:integer;var hasil:longint);

var i:longint;

begin

hasil:=1;

for i:=2 to n do hasil:=hasil*i;

end;

{program utama}

var n:longint;

fak:longint;

begin

write(‘Mau menghitung Faktorial berapa ? ‘);read(n);

faktorial(n,fak);

Write(n,’! = ‘,fak);readln;

readln;

end.

 

 

 

contoh 4 : buatlah program yang membaca dua buah integer yang disimpan pada dua buah variable dan menukar nilai variable tersebut.

 

program pertukaran;

var          angka1,angka2:integer;

procedure tukar (var a, b : integer);

{menukar isi a menjadi b dan sebaliknya}

Var temp: integer;

Begin

Temp:=a;

a:=b;

b:= temp;

end;

{program utama}

Begin

Writeln(‘sebelum pertukaran’);

Write(‘angka 1:’);readln(angka1);

Write(‘angka2:’);readln(angka2);

Tukar(angka1,angka2);

Writeln;

Writeln(‘setelah pertukaran’);

Write(‘angka1:’, angka1);

Write(‘angka2:’,angka2);

End.

 

Contoh 5: buatlah program yang menerima integer (angka1,angka2,angka3) dan mneggeser nilai nilai yang disimpan oleh variable tersebut sehingga isi angka 1 mnjadi isi angka 2, isi angka2 menjadi isi angka 3, dan isi angka 3 menjadi isi angka1.

Kampus IV (Kampus Utama)
Gedung Utama, Lantai 7

Universitas Ahmad Dahlan
Jl. Ahmad Yani (Ringroad Selatan) Tamanan Banguntapan Bantul Yogyakarta 55166
Telepon : (0274) 563515, 511830, 379418, 371120 Ext.
Telepon : +6281-1250-0800
Faximille : 0274-564604
Email : prodi(at)pmat.uad.ac.id

Daftar di UAD dan kembangkan potensimu dengan banyak program yang bisa dipilih untuk calon mahasiswa

Informasi PMB
Universitas Ahmad Dahlan

Telp. (0274) 563515
Hotline PMB
S1 – 0853-8500-1960
S2 – 0878-3827-1960