You are on page 1of 8

BAB V

RECORD

- Record merupakan tipe data terstrukturyang memiliki kumpulan elemen-elemen data


yang digabungkan menjadi satukesatuan
- Elemen data tersebut disebut field
- Field data tersebut dapat memiliki tipe data yang sama atau yang berbeda
- Walaupun field-field tersebut berada dalam satu kesatuan record, namun masing-masing
field tersebut tetap dapat diakses secara individual
- Field-field tersebut digabungkan menjadi satu dengan tujuan untuk memudahkan
Contoh 1
Record Langganan terdiri dari field
1. Kode Langganan
2. Nama Langganan
3. Alamat Langganan
4. Besat piutang

Contoh 2
Record Mahasiswa terdiri dari field
1. Nomor Induk Mahasiswa
2. Nama Mahasiswa
3. Alamat Mahasiswa
4. Telp Mahasiswa

Deklarasi Record
- Deklarasi umumnya diawali kata cadang/parameter TYPE
- Dapat juga langsung pada parameter VAR
- Diawali dengan kata cadang RECORD, di ikuti daftar field
- Diakhiri dengan kata cadang END;

Bentuk Umum

Contoh 1;

Hanya untuk kalangan sendiri 53


Contoh 2:

Pemakaian Record

Untuk menggunakan record tersebut, maka harus dituliskan nama record beserta dengan nama

.
field yang dipisahkan dengan tanda titik ( )

Contoh1

Contoh2

Hanya untuk kalangan sendiri 54


Contoh1 :

1. Buatlah sebuah program dan algoritma untuk mengisi record Mahasiswa, yang terdiri dari 3
field yaitu field nama, matakuliah, Nilai Angka
Menggunakan record dan looping

Uses
wincrt;

type
Mahasiswa=Record
Nama:string[30];
Matkul:string[30];
NilaiAngka:real;
End;
var
Mhs:Mahasiswa;
n,i:integer;

begin
write('Isi jumlah mahasiswa:');
readln(n);

for i:=1 to n do
begin
write('Isi Nama Mahasiswa:');readln(Mhs.Nama);
write('Isi Nama Matakuliah:');readln(Mhs.Matkul);
Write('Isi Nilai Angka:');Readln(Mhs.NilaiAngka);
end;

end.

Hanya untuk kalangan sendiri 55


2. dari contoh dari nomor 1 diatas dikembangkan dengan menggunakan konsep Record,
Looping dan Array
Uses
wincrt;

type
Mahasiswa=Record
Nama:string[30];
Matkul:string[30];
NilaiAngka:real;
End;
var
Mhs:Array[1..10] of Mahasiswa;
n,i:integer;

begin
write('Isi jumlah mahasiswa:');
readln(n);

for i:=1 to n do
begin
write('Isi Nama Mahasiswa:');readln(Mhs[i].Nama);
write('Isi Nama Matakuliah:');readln(Mhs[i].Matkul);
Write('Isi Nilai Angka:');Readln(Mhs[i].NilaiAngka);
end;
writeln;
for I:= 1 to n do
begin
writeln('Nama Anda :',Mhs[i].Nama);
writeln('Matakuliah Anda:',Mhs[i].Matkul);
writeln('Nilai Anda :',Mhs[i].NilaiAngka:9:2);
end;
end.

Catatan:
Agar tidak selalu menuliskan nama pengenal record maka dapat digunakan kata cadang
WITH-DO

Contoh:

With Mhs Do
Write(Nama);

Hanya untuk kalangan sendiri 56


Contoh:
Uses
wincrt;

type
Mahasiswa=Record
Nama:string[30];
Matkul:string[30];
NilaiAngka:real;
End;
var
Mhs:Array[1..10] of Mahasiswa;
n,i:integer;

begin

write('Isi jumlah mahasiswa:');


readln(n);

for i:=1 to n do
begin
with mhs[i] do
begin
write('Isi Nama Mahasiswa:');readln(Nama);
write('Isi Nama Matakuliah:');readln(Matkul);
Write('Isi Nilai Angka:');Readln(NilaiAngka);
end;
end;

writeln;
for I:= 1 to n do
begin
with mhs[i] do
begin
writeln('Nama Anda :',Nama);
writeln('Matakuliah Anda:',Matkul);
writeln('Nilai Anda :',NilaiAngka:9:2);
end;
end;

end.

Hanya untuk kalangan sendiri 57


Tugas-Tugas

1. Buatlah sebuah program untuk menentukan Nilai Huruf dari para mahasiswa di suatu kelas ,
jika diketahui jumlah mahasiswa untuk setiap kelas bervariasi, tetapi tidak akan melampaui
20 orang. Nilai Huruf ditentukan dari konversi nilai angka dengan ketentuan sebagai berikut:
Nilai Angka Nilai Huruf
>= 80 A
>= 70 B
>= 60 C
>= 50 D
<= 49 E
Sebagai Input:
Nomor Pokok Mahasiswa
Nama Mahasiswa
Nilai Angka
Sebagai Output
------------------------------------------------------------------------------------------------------------
No Nomor Pokok Mahasiswa Nama Mahasiswa Nilai Angka Nilai Huruf
------------------------------------------------------------------------------------------------------------
1 -------- ------- -------- --------
2 -------- ------- -------- --------
3 -------- ------- -------- --------
-----------------------------------------------------------------------------------------------------------
Bila program anda telah siap cobalah memasukkan data-data berikut ini

Nomor Pokok Mahasiswa Nama Mahasiswa Nilai Angka


7006396072 Neni Rachman 77.85
7006301077 Susetiawati 66.77
7006302078 Leni Rosi 55.71

2. Untuk mengirimkan paket melalui PT.Paket Kilat dikenakan biaya sebagai berikut:
Biaya administrasi Rp.100
Biaya Per Kg adalah Rp. 150, minimal dihitung 2 Kg yaitu Rp.300.
Untuk paket yang lebih dari 20 kg dikenakan tambahan Rp.50 per Kg Kelebihan
Untuk paket yang leboh dari 40 kg dikenakan tambahan Rp.100 per Kg Kelebihan.
Buatlah program untuk mencetak laporan paket-paket yang dikirim, memuat Nomor Paket,
Berat Paket, Tujuan Paket dan Ongkos Paket

Hanya untuk kalangan sendiri 58


Sebagai Output
---------------------------------------------------------------------------------------------------------
No Nomor Paket Berat Paket Tujuan Paket Ongkos Paket
---------------------------------------------------------------------------------------------------------
1 -------- ------- -------- --------
2 -------- ------- -------- --------
3 -------- ------- -------- --------
---------------------------------------------------------------------------------------------------------

3. Soal berikut adalah pengembangan dari soal no 1 diatas, jika untuk menentukan nilai
Angka Mutu yang diperoleh oleh N mahasiswa dikontribusi oleh komponen-komponen nilai
berikut
30% dari Nilai Kehadiran + 5 % dari Nilai Quis + 15 % dari Nilai Tugas + 20% dari Nilai
UTS + 30% dari Nilai UAS
Untuk ketentuan Huruf Mutu yang diperoleh adalah sebagai berikut:
a. Jika Angka Mutu >= 80, maka Huruf Mutu = A
b. Jika Angka Mutu >= 70, maka Huruf Mutu = B
c. Jika Angka Mutu >= 60, maka Huruf Mutu = C
d. Jika Angka Mutu >= 50, maka Huruf Mutu = D
e. Jika Angka Mutu <= 49, maka Huruf Mutu = E
Sebagai input
NPM, Nama, Matakuliah, Nilai Kehadiran, Nilai quis, Nilai Tugas, Nilai UTS,
Nilai UAS
Sebagai Output
-------------------------------------------------------------------------------------------------------------------
No NPM Nama Mahasiswa Matakuliah Nilai Angka Nilai Huruf
-------------------------------------------------------------------------------------------------------------------
1 -------- ------- -------- -------- -----------
2 -------- ------- -------- -------- -----------
3 -------- ------- -------- -------- -----------
-------------------------------------------------------------------------------------------------------------------

Hanya untuk kalangan sendiri 59


Hanya untuk kalangan sendiri 60

You might also like