Mengitung bangun datar dengan menggunakan bahasa pemrogramaan pascal dengan mengunakan subprogram (function). Dan ditulisan berikutnya saya akan coba buat dengan menggunakan subprogram (procedure).
Dibawah ini sourcecodenya.
program menghitung_bangun_datar;
uses wincrt;
const
phi=3.14;
var
a,b,c,no:integer;
uses wincrt;
const
phi=3.14;
var
a,b,c,no:integer;
x,y:real;
lagi:char;
ulang:boolean;
procedure garis;
begin
writeln(‘============================================’);
end;
function bujursangkar (var si,kell:integer):integer;
begin
bujursangkar:=si*si; {luas}
kell:=4*si; {keliling}
end;
function persegipanjang ( var p,l,kell:integer):integer;
begin
persegipanjang:=p*l; {luas}
kell:=2*(p+l); {keliling}
end;
function lingkaran (var r,kell:real):real;
begin
lingkaran:=phi*r*r; {luas}
kell:=2*phi*r {keliling}
end;
begin
ulang:=true;
while ulang=true do begin
clrscr;
writeln(‘>>> pilih menu <<<’);
writeln(’1. menghitung luas dan keliling bujur sangkar’);
writeln(’2. menghitung luas dan keliling persegi panjang’);
writeln(’3. menghitung luas dan keliling lingkaran’);
garis;
write(‘masukan no pilihan program=’); readln(no);
case no of
1:begin
lagi:=’y';
while lagi=’y’ do
begin
clrscr;
writeln(‘>>>menghitung luas dan keliling bujur sangkar’);
garis;
write(‘masukan sisi =’); readln(a);
writeln;
writeln(‘luas bujur sangkar?’);
writeln(a,’x',a, ‘=’,bujursangkar(a,b));
writeln(‘keliling bujur sangkar?’);
writeln(’4x’,a, ‘=’,b);
write(‘jika mau menghitung lagi tekan y/n =’); readln(lagi);
end;
end;
2:begin
lagi:=’n';
clrscr;
repeat
begin
clrscr;
writeln(‘>>>menghitung luas dan keliling persegi panjang’);
garis;
write(‘masukan panjang =’); readln(a);
write(‘masukan lebar =’); readln(b);
writeln;
writeln(‘luas persegi panjang?’);
writeln(a,’x',b,’=',persegipanjang(a,b,c));
writeln(‘keliling persegi panjang?’);
writeln(’2x(‘,a,’+',b,’)',’=',c);
end;
write(‘jika mau menghitung lagi tekan y/n =’); readln(lagi);
until lagi=’n';
end;
3:begin
lagi:=’y';
while lagi=’y’ do
begin
clrscr;
writeln(‘>>>menghitung luas dan keliling lingkaran’);
garis;
write(‘masukan jari-jari/r =’); readln(x);
writeln;
writeln(‘luas lingkaran?’);
writeln(phi:0:2,’x',x:0:0,’x',x:0:0,’=',lingkaran(x,y):0:2);
writeln(‘keliling lingkaran?’);
writeln(’2x’,phi:0:2,’x',x:0:0,’=',y:0:2);
write(‘jika mau menghitung lagi tekan y/n =’); readln(lagi);
end;
end;
else
writeln(‘tidak ada menu’);
end;
end;
lagi:=’y';
while lagi=’y’ do
begin
clrscr;
writeln(‘>>>menghitung luas dan keliling lingkaran’);
garis;
write(‘masukan jari-jari/r =’); readln(x);
writeln;
writeln(‘luas lingkaran?’);
writeln(phi:0:2,’x',x:0:0,’x',x:0:0,’=',lingkaran(x,y):0:2);
writeln(‘keliling lingkaran?’);
writeln(’2x’,phi:0:2,’x',x:0:0,’=',y:0:2);
write(‘jika mau menghitung lagi tekan y/n =’); readln(lagi);
end;
end;
else
writeln(‘tidak ada menu’);
end;
end;
end.
Tidak ada komentar:
Posting Komentar