Menghitung luas dan keliling sebuah persegi panjang sebenarnya gampang dan mudah dimengerti. Namun agak sulit jika diselesaikan dengan menggunakan prosedur karena perlu memahami cara kerja prosedur dalam program.
Rumus :
luas = panjang x lebar
Keliling = 2xpanjang + 2xlebar
Dalam contoh berikut, program akan dibuat dengan 2 cara :
1. Cara pertama, terdiri dari 2 prosedur yaitu Luas dan Keliling
2. Cara kedua, terdiri dari 4 prosedur yaitu Input, Luas, Keliling, dan Cetak.
Tujuan membuat kedua cara di atas agar kita dapat memahami dengan baik bagaimana cara mengembangkan sebuah program dengan menggunakan prosedur. Kedua cara memberikan hasil yang sama
Cara Pertama :
Program melakukan input data panjang dan lebar dalam program utama kemudian nilainya dikirim masing-masing prosedur. Kemudian prosedur Luas mengembalikan hasilnya lewat variabel ls dan prosedur keliling mengembalikan hasil lewat variabel kl.
Setelah dikembalikan ke program utama, nilai luas diterima oleh variabel c dan nilai keliling oleh variabel d. Dengan demikian, maka nilai Luas dan Keliling dapat dicetak dalam program utama dengan menggunakan variabel c dan d.
Program lengkapnya adalah sebagai berikut :
Program Persegi;
uses crt;
PROCEDURE LUAS(p,l:real; var ls:real);
Begin
ls:= p*l;
End;
PROCEDURE KELILING(p,l :real; var kl:real);
Begin
kl:=2*p + 2*l;
End;
{Program Utama}
var a,b,c,d:real;
Begin
clrscr;
write('Panjang = ');readln(a);
write('Lebar = ');readln(b);
Luas(a,b,c);
Keliling(a,b,d);
writeln('Luas = ',c:0:2);
writeln('Keliling =',d:0:2);
readkey;
End.
Cara Kedua :
Pada cara kedua merupakan pengembangan dari cara pertama, yaitu dengan menambahkan 2 buah prosedur baru yaitu Input dan Cetak. Prosedur input untuk melakukan input data panjang dan lebar sedangkan prosedur Cetak untuk melakukan proses cetak hasil perhitungan Luas dan Keliling.
Prosedur input mengirim nilai panjang dan lebar ke program utama lewat variabel p dan l kemudian diterima oleh variabel a dan b dalam program utama. Sedangkan prosedur Cetak, menerima nilai luas dan keliling lewat variabel ls dan kl untuk dicetak dalam prosedur Cetak.
Program lengkapnya sebagai berikut :
Program Persegi;
uses crt;
PROCEDURE INPUT(var p,l:real);
begin
clrscr;
write('Panjang = ');readln(p);
write('Lebar = ');readln(l);
End;
PROCEDURE LUAS(p,l:real; var ls:real);
Begin
ls:= p*l;
End;
PROCEDURE KELILING(p,l :real; var kl:real);
Begin
kl:=2*p + 2*l;
End;
PROCEDURE CETAK(ls,kl : real);
Begin
writeln('Luas = ',ls:0:2);
writeln('Keliling =',kl:0:2);
End;
{Program Utama}
var a,b,c,d:real;
Begin
input(a,b);
Luas(a,b,c);
Keliling(a,b,d);
cetak(c,d);
readkey;
End.
Output atau hasil dari kedua program di atas :
Dari kedua cara di atas, kita dapat membandingkan bahwa cara kedua merupakan cara yang lebih sederhana karena setiap tugas dalam program dikerjakan oleh satu prosedur.
Dengan memahami cara kerja prosedur dalam program ini, maka anda dapat mengenmbangkan kemampuan anda dengan mengubah PROCEDUR dalam program di atas menjadi FUNGSI.
Semoga bermanfaat.
God bless you all.
Tidak ada komentar:
Posting Komentar
Silakan memberikan komentar dan pertanyaan yang sifatnya positif.