Contoh program Array dan Record beserta flowchart pada Pascal tentang data Mahasiswa
Program DataMahasiswa;
uses crt;
Type Rec = Record
Kode,Kode1, NMK,NMK1, NIM,NIM1, Nama, Grade : String;
SKS : Integer;
end;
var Data : Array[1..100] of Rec;
Pilih : Char;
jlhMK, jlhmhsswa,I,a,b,n,k,s : integer;
Cocok : String;
Procedure InputMataKuliah;
Begin
clrscr;
write(' Masukkan Jumlah Mata Kuliah : ');readln(jlhMK);
n:=jlhMK;
for I:=1 to jlhMK do
begin
writeln(' ___________________________________');
writeln('| Data Ke-',I,' |');
writeln('|-----------------------------------|');
writeln('| Kode : |');
writeln('| Nama Mata Kuliah : |');
writeln('| SKS : |');
writeln('|___________________________________|');
gotoxy(22,5+(7*(I-1)));readln(Data[I].Kode);
gotoxy(22,6+(7*(I-1)));readln(Data[I].NMK);
gotoxy(22,7+(7*(I-1)));readln(Data[I].SKS);
writeln;
end;
end;
Procedure InputNilaiMahasiswa;
Begin
clrscr;
write(' Masukkan Jumlah Mahasiswa : ');readln(jlhmhsswa);
for I:=1 to jlhmhsswa do
begin
writeln(' ___________________________________');
writeln('| Data Ke-',I,' |');
writeln('|-----------------------------------|');
writeln('| NIM : |');
writeln('| Nama : |');
writeln('| Kode : |');
writeln('| Nama Mata Kuliah : |');
writeln('| Grade : |');
writeln('|___________________________________|');
gotoxy(23,5+(9*(I-1)));readln(Data[I].NIM);
gotoxy(23,6+(9*(I-1)));readln(Data[I].Nama);
gotoxy(23,7+(9*(I-1)));readln(Data[I].Kode1);
for a:=1 to n do
begin
IF Data[I].Kode=Data[a].Kode1 then
begin
Cocok:='y';
b:=a;
end;
end;
IF Cocok='y' then
Data[I].NMK1:=Data[b].NMK else
Data[I].NMK1:='Kode Tidak Ada';
gotoxy(23,8+(9*(I-1)));writeln(Data[I].NMK1);
gotoxy(23,9+(9*(I-1)));readln(Data[I].Grade);
writeln;
end;
end;
Procedure Table;
Begin
writeln('| | | |');
writeln('|_____________|__________________|_____|');
writeln('| |');
writeln('| Total SKS : SKS |');
writeln('|______________________________________|');
end;
Procedure CetakMataKuliah;
Begin
k:=0;
clrscr;
writeln(' ______________________________________');
writeln('| NILAI MAHASISWA |');
writeln('|______________________________________|');
writeln('| Kode | Nama Mata Kuliah | SKS |');
writeln('|_____________|__________________|_____|');
writeln('| | | |');
for I:=1 to jlhMK do
begin
with Data[I] do
begin
gotoxy(1,6+i);Table;
gotoxy(3,6+i);writeln(Data[I].Kode);
gotoxy(17,6+i);writeln(Data[I].NMK);
gotoxy(37,6+i);writeln(Data[I].SKS);
k:=k+Data[I].SKS;
end;
end;
gotoxy(15,9+i);writeln(k);
readkey;
end;
Procedure Table1;
Begin
writeln('| | | | | |');
writeln('|___________|_______________|____________|__________________|_______|');
end;
Procedure ProcedureCetakRekapNilai;
Begin
clrscr;
writeln(' ___________________________________________________________________');
writeln('| Rekap Nilai |');
writeln('|___________________________________________________________________|');
writeln('| NIM | Nama | Kode | Nama Mata Kuliah | Grade |');
writeln('|___________|_______________|____________|__________________|_______|');
writeln('| | | | | |');
for I:=1 to jlhmhsswa do
begin
with Data[I] do
begin
gotoxy(1,6+i);Table1;
gotoxy(3,6+i);writeln(Data[I].NIM);
gotoxy(15,6+i);writeln(Data[I].Nama);
gotoxy(31,6+i);writeln(Data[I].Kode1);
gotoxy(44,6+i);writeln(Data[I].NMK1);
gotoxy(63,6+i);writeln(Data[I].Grade);
end;
end;
readkey;
end;
Procedure CetakKHS;
Begin
I:=1;
clrscr;
writeln(' __________________________________________________');
writeln('| NIM : |');
writeln('| Nama : |');
writeln('|__________________________________________________|');
writeln('| KARTU HASIL STUDI |');
writeln('|__________________________________________________|');
writeln('| Kode Mata Kuliah | Nama Mata Kuliah | Grade |');
writeln('|__________________|__________________|____________|');
writeln('| | | |');
writeln('|__________________|__________________|____________|');
gotoxy(10,2);readln(Data[I].NIM1);
for a:=1 to jlhmhsswa do
begin
IF Data[I].NIM1=Data[a].NIM then
begin
gotoxy(10,3);writeln(Data[a].Nama);
gotoxy(3,9);writeln(Data[a].Kode1);
gotoxy(22,9);writeln(Data[a].NMK1);
gotoxy(41,9);writeln(Data[a].Grade);
end;
end;
readkey;
end;
Procedure Keluar;
begin
clrscr;
writeln('*********************************');
writeln('*********************************');
writeln('** ___ __ __ **');
writeln('** | |__| |__| |\ | |/ |__ **');
writeln('** | | | | | | \| |\ __| **');
writeln('** **');
writeln('*********************************');
writeln('*********************************');
readkey;
end;
Begin
repeat
clrscr;
writeln(' ____________________________');
writeln('| Menu Pilihan |');
writeln('| 1. Input Mata Kuliah |');
writeln('| 2. Input Nilai Mahasiswa |');
writeln('| 3. Cetak Mata Kuliah |');
writeln('| 4. Cetak Rekap Nilai |');
writeln('| 5. Cetak KHS |');
writeln('| 6. Keluar |');
writeln('|____________________________|');
writeln('| |');
writeln('| Masukkan Pilihan : |');
writeln('|____________________________|');
gotoxy(22,11);readln(Pilih);
Case Pilih of
'1' : InputMataKuliah;
'2' : InputNilaiMahasiswa;
'3' : CetakMataKuliah;
'4' : ProcedureCetakRekapNilai;
'5' : CetakKHS;
'6' : Keluar;
end;
Until (Pilih)='6';
end.
Link download : Program Array & Record + flowchart

Tidak ada komentar:
Posting Komentar