Senin, 13 April 2009

procedure menghitung luas dan keliling bangun datar

program menghitung_luas_dan_keliling_bangun_datar;
uses crt;
var
a,b,c,t,p,l,r,s:integer;
luas,keliling:real;
procedure menu;
begin
writeln ('1.segitiga');
writeln ('2.lingkaran');
writeln ('3.persegi panjang');
writeln ('4.bujur_sangkar');
end;
procedure segitiga;
begin
writeln ('menghitung luas dan keliling segitiga'); readln;
write ('input a:'); readln (a);
write ('input b:'); readln (b);
write ('input c:'); readln (c);
write ('input t:'); readln (t);
luas:=0.5*a*t;
keliling:=a+b+c;
writeln ('luas:',luas:3:3);
writeln ('keliling:',keliling:3:3);
end;
procedure lingkaran;
begin
writeln ('menhitung luas dan keliling lingkaran'); readln;
write ('input r:'); readln (r);
luas:=3.14*r*r;
keliling:=2*3.14*r;
writeln ('luas:',luas:3:3);
writeln ('keliling:',keliling:3:3);
end;
procedure persegi_panjang;
begin
writeln ('menhitung luas dan keliling persegi panjang'); readln;
write ('input p:'); readln (p);
write ('input l:'); readln (l);
luas:=p*l;
keliling:=2*(p+l);
writeln ('luas:',luas:3:3);
writeln ('keliling:',keliling:3:3);
end;
procedure bujur_sangkar;
begin
writeln ('menhitung luas dan keliling bujur sangkar'); readln;
write ('input s:'); readln (s);
luas:=s*s;
keliling:=4*s;
writeln ('luas:',luas:3:3);
writeln ('keliling:',keliling:3:3);
end;
var
pil:char;
tanya:string;
begin
tanya:='Y';
while tanya='Y' do
begin
writeln ('silahkan pilih menu berikut');
menu;
case pil of
'1.': begin segitiga; end;
'2.': begin lingkaran; end;
'3.': begin persegi_panjang; end;
'4.': begin bujur_sangkar; end;
writeln ('masukan pilihan anda:'); readln (pil);
write ('mengulang [Y/N]:'); readln (tanya);
end;
end.

Tidak ada komentar:

Posting Komentar