program project_nilai;
uses wincrt;
type nilai = record
nim:string[10];
nmmhs:string[15];
pas,cob,mat,rt : real;
end;
A= array[1..20] of nilai;
var
ulang:boolean;
procedure tampilanmenu(var pil:integer);
begin
gotoxy(10,5);writeln('___________________________');
gotoxy(10,6);writeln(' MENU UTAMA ');
gotoxy(10,7);writeln('___________________________');
gotoxy(10,8);writeln('1.Isi data Nilai Mahasiswa ');
gotoxy(10,9);writeln('2.Laporan Nilai Mahasiswa ');
gotoxy(10,10);writeln('3.Selesei ');
gotoxy(10,11);writeln('__________________________');
gotoxy(10,12);writeln('Pilih ');
gotoxy(10,13);writeln('__________________________');
gotoxy(25,12);readln(pil);
end;
procedure tampilanisi;
begin
gotoxy(10,5);writeln('___________________________');
gotoxy(10,6);writeln(' ISI DATA MAHASISWA ');
gotoxy(10,7);writeln('___________________________');
gotoxy(10,8);writeln('Nim :');
gotoxy(10,9);writeln('Nama Mahasiswa :');
gotoxy(10,10);writeln('Nilai Pascal : ');
gotoxy(10,11);writeln('Nilai Cobol : ');
gotoxy(10,12);writeln('Nilai Matematika: ');
gotoxy(10,13);writeln('Nilai Rata-Rata : ');
gotoxy(10,14);writeln('__________________________');
gotoxy(10,15);writeln('Isi Lagi (y/t) ');
gotoxy(10,16);writeln('__________________________');
end;
procedure isinilai(var M:A; var i:integer);
begin
with m[i] do
begin
gotoxy(30,8);readln(nim);
gotoxy(30,9);readln(nmmhs);
gotoxy(30,10);readln(pas);
gotoxy(30,11);readln(cob);
gotoxy(30,12);readln(mat);
rt := (pas+cob+mat)/3;
gotoxy(30,13);writeln(rt:4:2);
end;
end;
procedure headerlaporan;
begin
writeln('laporan Data barang');
writeln('_______________________');
gotoxy(1,3);writeln('No.');
gotoxy(4,3);writeln('Kode');
gotoxy(14,3);writeln('Nama barang');
gotoxy(29,3);writeln('Harga');
gotoxy(39,3);writeln('stok');
writeln('__________________________________________________________________');
end;
procedure laporan(var M:A; var n: integer);
var
lagi :char;
i : integer;
begin
clrscr;
headerlaporan;
for i:= 1 to n do
with m[i] do
begin
writeln(1:2,' ',nim,nmmhs:10,' ',pas:15:2,' ',cob:15:2,' ',mat:15:2,' ',rt:8:2);
if i mod 3 = 0 then
begin
writeln('____________________________________________________');
writeln('Tekan Enter untuk lanjut');readln;
clrscr;
headerlaporan;
end;
end;
writeln('____________________________________________________');
writeln('Habis');
readln;
end;
procedure isidatanilai(var M:A;var k:integer);
var
lagi : char;
begin
lagi:='Y';k:=0;
while upcase (lagi) = 'Y' do
begin
clrscr;
K:=k+1;
tampilanisi;
isinilai(M,k);
gotoxy(33,15);readln(lagi);
end;
end;
var
pilih : integer;
n1 : A;
j : integer;
begin
ulang:=true;j:=0;
while ulang do
begin
clrscr;
tampilanmenu(pilih);
case pilih of
1:isidatanilai(n1,j);
2:laporan(n1,j);
3:exit;
end;
end;
end.
uses wincrt;
type nilai = record
nim:string[10];
nmmhs:string[15];
pas,cob,mat,rt : real;
end;
A= array[1..20] of nilai;
var
ulang:boolean;
procedure tampilanmenu(var pil:integer);
begin
gotoxy(10,5);writeln('___________________________');
gotoxy(10,6);writeln(' MENU UTAMA ');
gotoxy(10,7);writeln('___________________________');
gotoxy(10,8);writeln('1.Isi data Nilai Mahasiswa ');
gotoxy(10,9);writeln('2.Laporan Nilai Mahasiswa ');
gotoxy(10,10);writeln('3.Selesei ');
gotoxy(10,11);writeln('__________________________');
gotoxy(10,12);writeln('Pilih ');
gotoxy(10,13);writeln('__________________________');
gotoxy(25,12);readln(pil);
end;
procedure tampilanisi;
begin
gotoxy(10,5);writeln('___________________________');
gotoxy(10,6);writeln(' ISI DATA MAHASISWA ');
gotoxy(10,7);writeln('___________________________');
gotoxy(10,8);writeln('Nim :');
gotoxy(10,9);writeln('Nama Mahasiswa :');
gotoxy(10,10);writeln('Nilai Pascal : ');
gotoxy(10,11);writeln('Nilai Cobol : ');
gotoxy(10,12);writeln('Nilai Matematika: ');
gotoxy(10,13);writeln('Nilai Rata-Rata : ');
gotoxy(10,14);writeln('__________________________');
gotoxy(10,15);writeln('Isi Lagi (y/t) ');
gotoxy(10,16);writeln('__________________________');
end;
procedure isinilai(var M:A; var i:integer);
begin
with m[i] do
begin
gotoxy(30,8);readln(nim);
gotoxy(30,9);readln(nmmhs);
gotoxy(30,10);readln(pas);
gotoxy(30,11);readln(cob);
gotoxy(30,12);readln(mat);
rt := (pas+cob+mat)/3;
gotoxy(30,13);writeln(rt:4:2);
end;
end;
procedure headerlaporan;
begin
writeln('laporan Data barang');
writeln('_______________________');
gotoxy(1,3);writeln('No.');
gotoxy(4,3);writeln('Kode');
gotoxy(14,3);writeln('Nama barang');
gotoxy(29,3);writeln('Harga');
gotoxy(39,3);writeln('stok');
writeln('__________________________________________________________________');
end;
procedure laporan(var M:A; var n: integer);
var
lagi :char;
i : integer;
begin
clrscr;
headerlaporan;
for i:= 1 to n do
with m[i] do
begin
writeln(1:2,' ',nim,nmmhs:10,' ',pas:15:2,' ',cob:15:2,' ',mat:15:2,' ',rt:8:2);
if i mod 3 = 0 then
begin
writeln('____________________________________________________');
writeln('Tekan Enter untuk lanjut');readln;
clrscr;
headerlaporan;
end;
end;
writeln('____________________________________________________');
writeln('Habis');
readln;
end;
procedure isidatanilai(var M:A;var k:integer);
var
lagi : char;
begin
lagi:='Y';k:=0;
while upcase (lagi) = 'Y' do
begin
clrscr;
K:=k+1;
tampilanisi;
isinilai(M,k);
gotoxy(33,15);readln(lagi);
end;
end;
var
pilih : integer;
n1 : A;
j : integer;
begin
ulang:=true;j:=0;
while ulang do
begin
clrscr;
tampilanmenu(pilih);
case pilih of
1:isidatanilai(n1,j);
2:laporan(n1,j);
3:exit;
end;
end;
end.
0 komentar:
Posting Komentar