PROGRAM PROCEDURE DAN FUNCTION PASCAL
uses wincrt;
var
pilihan : integer;
a,b : real;
procedure LS;
var
a,t : real;
LS : real;
begin
clrscr;
writeln('MENGHITUNG LUAS SEGITIGA');
writeln;
write('Nilai Alasnya : ');readln(a);
write('Nilai Tingginya : ');readln(t);
writeln;
LS:= 0.5*a*t;
writeln('Luas Segitiganya : ',LS :10:2);
end;
procedure LBS;
var
l,s : real;
begin
clrscr;
writeln('MENGHITUNG LUAS BUJUR SANGKAR');
writeln;
write('Masukkan Nilai Sisinya : '); readln(s);
l:= s*s;
writeln;
writeln('Luas Bujur Sangkar Adalah : ',l:10:2);
end;
procedure L4PP;
var
luas,pan,leb : real;
begin
clrscr;
writeln('MENGHITUNG LUAS EMPAT PERSEGI PANJANG');
writeln;
write('Masukkan Nilai Panjangnya : '); readln(pan);
write('Masukkan Nilai Lebarnya : '); readln(leb);
writeln;
luas:= pan*leb;
writeln('Luas Empat Persegi Panjangnya : ', luas:10:2);
end;
procedure terimakasih;
const
judul1 = 'TERIMA KASIH SUDAH MENGGUNAKAN PROGRAM INI' ;
judul2 = 'Created By @hidayatfatmayan' ;
begin
clrscr;
writeln(judul1);
writeln(judul2);
end;
function min (x,y: real): real;
begin
if x>y then
min:=y
else
min:=x
end;
function max (x,y: real): real;
begin
if x > y then
max:=x
else
max:=y
end;
{uji coba}
procedure nilaiterbesar;
var
a : integer;
nilai, total, tinggi, rendah, rata2 : real;
begin
clrscr;
total :=0;
write('jumlah bilangan : 3 bilangan ');
writeln;
for a := 1 to 3 do
begin
write('nilai bilangan ke ',a,' : ');readln(nilai);
total := total+nilai;
if a = 1 then
begin
tinggi := nilai;
rendah := nilai;
end
else
begin
if nilai > tinggi then
tinggi:= nilai
else
begin
if nilai < rendah then
rendah := nilai;
end;
end;
end;
writeln;
writeln('nilai terrendah : ',rendah :1:2);
writeln('nilai tertinggi : ',tinggi :1:2);
end;
{batas baru}
procedure rata2;
var
a,nbuahbilangan : integer;
nilai, total, tinggi, rendah, rata : real;
begin
clrscr;
total :=0;
write('input total bilangan : '); readln(nbuahbilangan);
writeln;
for a := 1 to nbuahbilangan do
begin
write('nilai bilangan ke ',a,' : ');readln(nilai);
total := total+nilai;
if a = 1 then
begin
tinggi := nilai;
rendah := nilai;
end
else
begin
if nilai > tinggi then
tinggi:= nilai
else
begin
if nilai < rendah then
rendah := nilai;
end;
end;
end;
rata := total/nbuahbilangan;
writeln;
writeln('nilai terrendah : ',rendah :1:2);
writeln('nilai tertinggi : ',tinggi :1:2);
writeln('NILAI RATA-RATA : ',rata :1:2);
end;
procedure gred;
var
nama,nim,kelas,jurusan,mkuliah : string[25];
ket : string[50];
nilai : real;
grade : char;
n : integer;
ulang : integer;
begin
clrscr;
ulang :=1;
writeln('berapa total input data : ');readln(n);
for ulang :=1 to n do
begin
clrscr;
writeln(' PROGRAM GRADE NILAI MAHASISWA ');
writeln;
write (' nama : '); readln(nama);
write (' nim : '); readln(nim);
write (' kelas : '); readln(kelas);
write (' jurusan : '); readln(jurusan);
write (' mata kuliah : '); readln(mkuliah);
write (' nilai uts : '); readln(nilai);
if nilai <=45 then
grade:='E'
else
if nilai <=55 then
grade:='D'
else
if nilai <=65 then
grade:='C'
else
if nilai <=75 then
grade:='B'
else
grade:='A';
writeln (' Gradenya adalah : ',grade);
writeln ('========================================');
if ulang=n then
writeln ('Selesai !!, tekan ENTER untuk menampilkan menu utama')
else
writeln ('tekan ENTER untuk melanjutkan'); readln;
end
end;
begin
repeat
writeln;
writeln('============= MENU PROGRAM UTAMA ===============');
writeln('[1] MENGHITUNG LUAS SEGITIGA');
writeln('[2] MENGHITUNG LUAS BUJUR SANGKAR');
writeln('[3] MENGHITUNG LUAS EMPAT PERSEGI PANJANG');
writeln('[4] MENENTUKAN BILANGAN TERKECIL DARI 2 BILANGAN');
writeln('[5] MENENTUKAN BILANGAN TERBESAR DARI 2 BILANGAN');
writeln('[6] MENENTUKAN NILAI TERBESAR DR 3 BUAH BILANGAN');
writeln('[7] MENENTUKAN NILAI RATA2 DR N BUAH BILANGAN');
writeln('[8] MENENTUKAN NILAI GRADE DR N SISWA');
writeln('[0] EXIT');
writeln('================================================');
writeln;
write('PILIH MENU DIATAS [1 s/d 8, atau 0] ? '); readln(pilihan);
case pilihan of
1 : LS;
2 : LBS;
3 : L4PP;
4 : begin
clrscr;
writeln('sub program prosedur');
writeln('mencari bil. min dari 2 bil.');
writeln;
write('masukkan bil. ke-1 : ');read(a);
write('masukkan bil. ke-2 : ');read(b);
write('bil terkecil adalah : ', min (a,b):10:2);
writeln;
readln;
end;
5 : begin
clrscr;
writeln('sub program prosedur');
writeln('mencari bil. max dari 2 bil.');
writeln;
write('masukkan bil. ke-1 : ');read(a);
write('masukkan bil. ke-2 : ');read(b);
write('bil terbesar adalah : ', max(a,b):10:2);
writeln;
readln;
end;
6 : nilaiterbesar;
7 : rata2;
8 : gred;
0 : terimakasih;
end;
until pilihan = 0;
end.
sekian contoh dari saya... semoga bermanfaat ..
Tidak ada komentar:
Posting Komentar