Procedure dengan Parameter
A. Procedure
dengan Parameter
Nilai di dalam suatu modul program Pascal sifatnya
adalah lokal, artinya hanya dapat digunakan pada modul atau unit program yang
bersangkutan saja, tidak dapat digunakan pada modul atau unit program yang
lainnya.
Variabel
Global dan variabel Lokal
·
Variabel Global adalah
variabel yang dapat dikenali diseluruh bagian program biasanya variabel ini
merupakan variabel yang dideklarasikan pada deklarasi program umum.
·
Variabel Lokal adalah
variabel yang dikenal pada lingkup yang lebih sempit dari pada variabel global.
1. Procedure
parameter dg Variabel global.
Program PersegiPanjang; {judul Program Utama}
uses wincrt;
var {deklarasi
variabel global}
p,l:byte; {p
:panjang, l:lebar}
ls,kel:integer; {ls:luas, kel:keliling}
Procedure Hitung_Luas; {Prosedur untuk
menghitung luas}
begin
ls:=p*l;
writeln('Luas :',ls);
end;
Procedure Hitung_Keliling; {Prosedur untuk
menghitung keliling}
begin
kel:=(2*p)+(2*l);
writeln('Keliling :',kel);
end;
{===program
utama===}
begin
clrscr;
writeln('Hitung luas dan keliling
persegipanjang');
writeln;
write('Masukan panjang : ');readln(p);
write('Masukan lebar : ');readln(l);
writeln;
Hitung_Luas;
{Memanggil prosedur Hitung_Luas}
Hitung_Keliling; {Memanggil
prosedur Hitung_Keliling}
readln;
end.
2. Procedure
parameter dg Variabel Lokal
Program PersegiPanjang;
{judul Program Utama}
uses wincrt;
Procedure Hitung_Luas(p,l:integer);
{Prosedur dengan parameter}
var
ls:integer; {variabel
lokal}
begin
ls:=p*l;
writeln('Luas :',ls);
end;
Procedure
Hitung_Keliling(p,l:integer); {Prosedur dengan parameter}
var
kel:integer; {variabel lokal}
begin
kel:=(2*p)+(2*l);
writeln('Keliling :',kel);
end;
{===program utama===}
var
pj,lbr:integer;
begin
clrscr;
writeln(' Menghitung luas dan keliling persegipanjang');
writeln;
write('Masukan panjang : ');readln(pj);
write('Masukan lebar :
');readln(lbr);
writeln;
Hitung_Luas(pj,lbr); {Memanggil prosedur Hitung_Luas}
Hitung_Keliling(pj,lbr); {Memanggil prosedur Hitung_Keliling}
readln;
end.
B. Program Function
Apa yang dimaksud dengan fungsi?. Fungsi tidak jauh
berbeda dengan rosedur, yaitu suatu modul program terpisah dari progam utama
yang diletakan dalam blok tersendiri yang berfungsi sebagai bagian dari
program. Namun fungsi memiliki perbedaan mendasar dengan prosedur yaitu :
fungsi memberikan nilai balik (return)
sedangkan prosedur tidak. Cara penulisan fungsi di Turbo Pascal seperti dibawah
ini :
Program PersegiPanjang;
uses wincrt;
Function
Luas(p,l:integer ):integer;
begin
Luas:=p*l;
end;
{===program utama===}
var
pj,lbr:integer;
begin
clrscr;
writeln(' Menghitung luas
persegipanjang');
writeln;
write('Masukan panjang :
');readln(pj);
write('Masukan lebar : ');readln(lbr);
write('Luasnya = ',Luas(pj,lbr));
readln;
end.
C. Program Record
Record dapat dikatakan sebagai suatu kumpulan data
item yang masing-masing mempunyai jenis
data berbeda.
Data item yang merupakan elemen record biasanya
disebut dengan FIELD.
Type
barang= RECORD
nmbrg:string[20];
jmlbrg:array[1..3]of
byte;
hrgbrg:real;
total:real;
end;
var jual:barang;
tbarang,
i:integer;
Begin
clrscr;
write(‘Nama
Barang :’);readln(jual.nmbrg);
for
i:=1to 3 do
begin
write(‘Jumlah
barang ’,I,’ : ’);readln(jual.jmlbrg[i]);
tbarang:=tbarang+jual.jmlbrg[i];
end;
write(‘Harga
barang :’);readln(jual.hrgbrg);
jual.total:=tbarang*jual.hrgbrg;
writeln(‘Total
Harga Barang = ‘, jual.total:10:2);
end.
D. Set
(Himpunan)
Set adalah kumpulan dari nilai-nilai yang
memiliki kesamaan sifat, yaitu tipe data yang sama dan urutan penulisannya
tidak diperhatikan. Setiap obyek dalam himpunan disebut dengan anggota atau
elemen himpunan. Contoh :
- Huruf
vokal dalam alfabet
- kendaraan
bermotor
- binatang
menyusui
- bilangan
genap 1 sampai 100
- dan
sebagainya
Program
set1;
uses
wincrt;
type
karakter= set of char;
var kapital : karakter;
hidup
: karakter;
jumlahh,jumlahk
: integer;
kalimat
: string;
i:integer;
begin
clrscr;
kapital:=[‘A’..’Z’];
hidup:=[‘A’,’E’,’I’,’O’,’U’,’a’,’e’,’i’,’o’,’u’];
jumlahh:=0;
jumlahk:=0;
writeln(‘Masukkan
suatu kalimat :’);
readlne
(kalimat);
for
I:=1 to length(kalimat) do
begin
if
kalimat[i] in kapital then inc(jumlahk);
if
kalimat[i] in hidup then inc(jumlahh);
end;
writeln(‘Jumlah
kapital =‘,jumlahk);
writeln(‘Jumlah
huruf hidup =‘,jumlahh);
end.
Komentar
Posting Komentar