PP 10 Record
PP 10 Record
PENGANTAR PEMROGRAMAN
RECORD
Record :
Tipe data majemuk (biasanya terdiri dari beberapa
tipe dasar data)
Tipe data terstruktur
Contoh 2
Tanggal dalam kalender, dinyatakan dalam bentuk
tanggal (dd), bulan (mm), tahun (yy).
Contoh 3
Struktur tipe data bentukan yang lebih kompleks
Misalkan akan menyimpan data nilai-nilai mata kuliah
mahasiswa
Akan dibuat record mata kuliah dan nilai mahasiswa
Record nilai mahasiswa juga mengacu ke record matakuliah
Struktur record :
NIM
Nama Mahasiswa
Mata kuliah :
Kode Mata kuliah
Nama Mata kuliah
Nilai Mata kuliah
Contoh ….
program record_02;
uses crt;
type mata_kuliah = record
kode_mk : string[6];
nama_mk : string;
nilai : char;
end;
type nilai_mhs = record
NIM : string[9];
nama_mhs : string;
mk : mata_kuliah;
end;
var nilmhs : nilai_mhs;
Contoh ….
begin
clrscr;
write('Nomor induk mahasiswa : ');readln(nilmhs.NIM);
write('Nama mahasiswa : ');readln(nilmhs.nama_mhs);
write('Kode mata kuliah : ');readln(nilmhs.mk.kode_mk);
write('Nama mata kuliah : ');readln(nilmhs.mk.nama_mk);
write('Nilai : ');readln(nilmhs.mk.nilai);
writeln;
writeln('Data mahasiswa yang di-input : ');
writeln;
write(nilmhs.NIM,' ',nilmhs.nama_mhs,' ',nilmhs.mk.kode_mk,
' ', nilmhs.mk.nama_mk,' ',nilmhs.mk.nilai);
readln;
end.
Contoh ….
Record dalam Array
Misalnya akan mengelola data sekumpulan
mahasiswa
Data mahasiswa :
NIM (nomor induk mahasiswa)
Nama mahasiswa
IPK (indeks prestasi komulatif)
program record_03;
uses crt;
type mahasiswa = record
NIM : string[9];
nama_mhs : string;
IPK : real;
end;
begin
clrscr;
write('Jumlah mahasiswa : ');readln(n);
writeln;
for i:=1 to n do
begin
write(i);
write(' NIM : ');readln(mhs[i].NIM);
write(' Nama mahasiswa : ');readln(mhs[i].nama_mhs);
write(' IPK : ');readln(mhs[i].IPK);
end;
writeln;
writeln('No. NIM Nama IPK ');
for i:= 1 to n do
writeln (i,' ',mhs[i].NIM,' ',mhs[i].nama_mhs,' ',
mhs[i].IPK:0:2);
readln;
end.
Record dalam Array ….
Record dalam Array ….
program record_04;
uses crt;
type mata_kuliah = record
kode_mk : string[6];
nama_mk : string;
nilai : char;
end;
type mahasiswa = record
NIM : string[11];
nama_mhs : string;
mk : array[1..3] of mata_kuliah;
end;
type datmhs = array[1..100] of mahasiswa;
var mhs : datmhs;
i,j,a,n : integer;
Record dalam Array ….
begin
clrscr;
write('Jumlah mahasiswa : ');readln(n);
writeln;
for i:=1 to n do
begin
write(i);
write(' NIM : ');readln(mhs[i].NIM);
write(' Nama mahasiswa : ');readln(mhs[i].nama_mhs);
for j:=1 to 3 do
begin
write(' ',j);
write(' Kode_mk : ');readln(mhs[i].mk[j].kode_mk);
write(' Nama_mk : ');readln(mhs[i].mk[j].nama_mk);
write(' Nilai : ');readln(mhs[i].mk[j].nilai);
end;
end;
Record dalam Array ….
writeln;
write('Data mahasiswa ke - ');readln(a);
writeln('Nama : ', mhs[a].nama_mhs);
writeln('NIM : ', mhs[a].NIM);
writeln;
for j:=1 to 3 do
writeln(mhs[a].mk[j].kode_mk,' ',
mhs[a].mk[j].nama_mk,' ',mhs[a].mk[j].nilai);
readln;
end.
Record dalam Array ….
Tugas
Input :
Nama :
PS :
Fakultas:
Nilai Mahasiswa :
Kode MK
Nama MK
Nilai MK
Nilai Tugas
Nilai UTS
Nilai UAS
Nilai Angka
Nilai Mutu
Nilai mhs :
Nilai Angka : 0.3*N_Tugas+0.35*N_UTS + 0.35*N_UAS
Nilai Mutu :
A : NM ≥ 80
B+ : 73 ≤ NM < 80
B : 65 ≤ NM < 73
C+ : 60 ≤ NM < 65
C : 55 ≤ NM < 60
D : 45 ≤ NM < 55
E : NM < 45