Tipe data record digunakan untuk menyimpan beberapa data dengan tipe yang berbeda dalam satu kelompok data. Record dapat memiliki field dengan tipe array atau record. Record juga dapat disimpan dalam array.
2. Definisi
Tipe data record merupakan tipe
data terstruktur.
Tipe data record digunakan untukTipe data record digunakan untuk
menyimpan sejumlah data dengan
nilai dengan tipe data yang berbeda
dalam satu kelompok data.
3. Perbedaan Record dan Array
Array :
Semua elemennya mempunyai tipe
sama
Record
Semua elemennya mempunyai tipe
yang berbeda antara satu sama
lainnya.
4. Deklarasi Record
Type
Pengenal = Record
Namafield-1 : Type
Namafield-2 : TypeNamafield-2 : Type
……
Namafield-N : Type
End
Istilah Nama field = nama variabel
5. dapat juga dideklarasikan dengan kata
kunci Var sbb :
Var
Pengenal = Record
Namafield-1 : TypeNamafield-1 : Type
Namafield-2 : Type
……
Namafield-N : Type
End
6. Contoh
type
data_pegawai = record
kd_peg : string[5];
nama : string[15];
alamat : string[20];alamat : string[20];
kota : string[20];
gaji : longint;
end;
var
pegawai : data_pegawai;
7. Cara Pembacaan Data Record
Menyebutkan nama Variabel kemudian
diikuti oleh nama record.
Nama Variabel dan nama record dipisahkan
oleh tanda titik.
Write(‘Kode :’); readln(Pegawai.kode_peg);
Write(‘Nama :’); readln(Pegawai.nama);
Write(‘Alamat :’); readln(Pegawai.alamat);
Write(‘Kota :’); readln(Pegawai.kota);
Write(‘Gaji :’); readln(Pegawai.gaji);
8. Contoh Program
type
data_pegawai = record
kd_peg : string[5];
nama : string[15];
alamat : string[20];
gaji : longint;
end;
var
pegawai : data_pegawai;
10. Statement With - Do
Digunakan untuk menyederhanakan dalam
pembacaan data record.
Bentuk Perintah :
with namaVarRecord do
Begin
field-1
field-2
……..
field-n
End;
11. Cara penulisan di atas disederhanakan menjadi :
With pegawai do
Begin
write(‘Kode :’);readln(kode_peg);
write(‘ Nama :’); readln(nama);write(‘ Nama :’); readln(nama);
write(‘ Alamat :’); readln(alamat);
write(‘ Kota :’); readln(kota);
write(‘ Gaji :’); readln(gaji);
End;
12. Record dalam Array
Untuk dapat menyimpan sejumlah record
maka dapat digunakan array yang bertipe
record.
Misalnya ada 20 pegawai, maka variabelMisalnya ada 20 pegawai, maka variabel
pegawai didefinisikan dengan variabel array
yang bertipe record sbb :
pegawai : array[1..20] of data_pegawai;
13. Cara mengakses atau cara membaca Record dalam
array adalah dengan menambahkan indeks array
pada nama variabel pegawai sbb :
With pegawai[i] do
Begin
write(‘Kode :’);readln(kode_peg);
write(‘ Nama :’); readln(nama);write(‘ Nama :’); readln(nama);
write(‘ Alamat :’); readln(alamat);
write(‘ Kota :’); readln(kota);
write(‘ Gaji :’); readln(gaji);
End;
14. Contoh program :
Program Pegawai;
Uses crt;
type
data_pegawai = record
kd_peg : string[5];
nama : string[15];nama : string[15];
alamat : string[20];
gaji : longint;
end;
var
pegawai : array[1..20] of data_pegawai;
i, n: integer;
15. write(‘Jumlah Pegawai =‘);readln(n);
For i:=1 to n do
Begin
For i:=1 to n do
Begin
With pegawai[i] do
Begin
write(‘Kode :’);readln(kode_peg);write(‘Kode :’);readln(kode_peg);
write(‘ Nama :’); readln(nama);
write(‘ Alamat :’); readln(alamat);
write(‘ Kota :’); readln(kota);
write(‘ Gaji :’); readln(gaji);
End;
End;
End;
16. Write(‘Kode Nama Alamat Kota Gaji’);
Writeln;
For i:=1 to n
Begin
With pegawai[i] do
Begin
write(kode_peg);write(kode_peg);
write(‘ ‘,nama);
write(‘ ‘,alamat);
write(‘ ‘,kota);
write(‘ ‘,gaji);
End;
End;
17. Field Record bertipe Array
Jika dalam suatu record terdapat beberapa
field yang sama tipenya dapat digunakan
array.
Contoh ada data barang yang mempunyai
struktur.struktur.
- Nama barang -> bertipe String
- Jumlah unit barang ke 1 -> bertipe Byte
- Jumlah unit barang ke 2 -> bertipe Byte
- Jumlah unit barang ke 3 -> bertipe Byte
19. Tipe Data Record dengan
field tipe record
Dalam Turbo Pascal tipe data record dapat
didefinisikan juga sebagai field dari suatu
record.
Artinya suatu record dapat juga mempunyai
field yang merupakan record.
20. Contoh:
Data pegawai mempunyai struktur sebagai berikut :
- Nama pegawai -> string
- Mulai masuk -> - Tgl
- Bln
- Thn- Thn
- Alamat pegawai -> - Jalan
- Kota
- Gaji -> - Gaji pokok
- Lembur
- Tunjangan
21. Contoh
type
masuk = record
tgl : 1..31;
bln : 1..12;
thn : integer;
end;
alamat = record
jalan : string[20];
kota : string[10];
end;
22. gajipeg = record
pokok,tunjangan,lembur : real;
end;
datapegawai = record
nama : string[20];nama : string[20];
tglmasuk : masuk;
almt : alamat;
gaji : gajipeg;
end;
24. Tugas Kelompok
Buat program yang menggunakan Tipe data
record dengan field tipe record
1. Kasus Data Pegawai1. Kasus Data Pegawai
2. Kasus Data Mahasiswa
Tiap Kelompok terdiri dari 2 atau 3 orang. Anggota
pilih sendiri.