PROCEDURE DAN FUNCTION
1. Pemrograman Modular
Modular programming adalah merupakan suatu teknik
untuk menulis program yang berukuran besar. Program dibagi menjadi beberapa
bagian kecil. Tiap bagian disebut module, yang melakukan suatu tugas tertentu.
Contoh :
• Menampilkan menu pilihan
• Menghitung nilai rata-rata
• Mensortir data
Pascal mengenal module sebagai:
1. PROCEDURE (terbagi menjadi dua)
a) Procedure Sederhana tidak menerima argumen (nilai atau data) ketika
dieksekusi.
b) Procedure Kompleks menerima nilai yang diproses ketika dieksekusi.
Procedure mendukung desain program terstruktur, dengan membolehkan membuat
module secara terpisah.
a. Procedure Sederhana
Procedure sederhana dipakai untuk menampilkan pilihan menu, dsb. procedure
(module) tersebut terdiri atas beberapa pernyataan (statements), yang
dikelompokkan dengan kata kunci begin dan end . Setiap procedure mempunyai
nama. Seperti contoh berikut:
SYNTAX
PROCEDURE NAMA;
begin
:
pernyataan
:
end;
Contoh a.
PROCEDURE DISPLAY_MENU;
begin
writeln('Pilihan Menu');
writeln(' 1: Edit file teks');
writeln(' 2: buka file teks ');
writeln(' 3: Simpan file teks);
writeln(' 4: Kopi file teks’);
writeln(' 5: Cetak file teks’)
end;
Contoh
berikut adalah program untuk menampilkan menu:
Contoh b.
program PROC1 ;
uses wincrt;
PROCEDURE DISPLAY_MENU;
begin
writeln('Pilihan Menu');
writeln(' 1: Edit file teks');
writeln(' 2: buka file teks ');
writeln(' 3: Simpan file teks);
writeln(' 4: Kopi file teks’);
writeln(' 5: Cetak file teks’)
end;
end;
begin
writeln('memanggil prosedur');
DISPLAY_MENU;
writeln('kembali dari prosedur')
end.
Contoh c.
program SIMPLE_PROCEDURE;
uses wincrt;
var waktu, jarak, kecepatan : real;
procedure tampilan_judul;
begin
writeln('Menghitung jarak tempuh berdasar pada');
writeln('dua variabel yaitu: kecepatan dan waktu');
end;
procedure masukkan_data;
begin
write('Masukkan kecepatan dalam km/jam: ');
readln(kecepatan);
write('Masukkan waktu dalam jam : ‘);
readln(time)
end;
procedure hitung_jarak;
begin
jarak:= kecepatan *waktu
end;
procedure tampilkan_hasil;
begin
writeln('jarak yang ditempuh adalah ',jarak:5:2,' km.')
end;
begin {program utama}
tampilan_judul;
masukkan_data;
hitung_jarak;
tampilkan_hasil
end.
Output program:
Menghitung
jarak tempuh berdasar pada
dua variabel yaitu: kecepatan dan waktu
Masukkan kecepatan dalam km/jam: 30
Masukkan waktu dalam jam : 2
jarak yang ditempuh adalah 60 km
Catatan : ketiga variabel waktu, jarak,dan kecepatan adalah berlaku untuk semua
procedure sehingga disebut variabel GLOBAL.
Contoh d.
program Kalkulator_sederhana;
uses wincrt;
var salah_tanda : boolean;
operator : char;
angka_1, angka_2, hasil : real;
procedure PERKALIAN;
begin
hasil := angka_1 * angka_2
end;
procedure PEMBAGIAN;
begin
hasil := angka_1 / angka_2
end;
procedure PENJUMLAHAN;
begin
hasil := angka_1 + angka_2
end;
procedure PENGURANGAN;
begin
hasil := angka_1 - angka_2
end;
procedure MASUKAN;
begin
writeln(‘MASUKKAN DUA ANGKA DAN OPERATOR);
writeln(' angka_1 operator angka_2');
readln(angka_1);
...readln(operator);
...readln(angka_2)
end;
begin
salah_tanda:= FALSE;
MASUKAN;
case operator of
'*': PERKALIAN;
'/': PEMBAGIAN;
'+': PENJUMLAHAN;
'-': PENGURANGAN;
else salah_tanda := TRUE
end;
if invalid_operator then
writeln('Invalid operator')
else
writeln(angka_1:4:2,' ',operator,' ',angka_2:4:2,'=',hasil:5:2)
end.
0 komentar
Posting Komentar