RECORD RECORD Pascal melengkapi tipe data terstruktur dengan tipe record, dimana beberapa komponen dengan tipe data yang berbeda dapat dihimpun dalam struktur tipe record. Dengan demikian record bersifat heterogen. DEKLARASI RECORD Type <identifier tipe record> = record <identifier field1> : <tipe data 1>; <identifier field2> : <tipe data 2>; ... <identifier fieldN> : <tipe data N> end; Var <identifier variabel record> : <identifier tipe record> DEKLARASI RECORD Komponen didalam struktur record disebut field. setiap field dapat dideklarasikan untuk tipe data yang berbeda. Contoh Deklarasi : Type RMahasiswa = Record Nama : String; NIM : String; Nilai : Real; End; Var X : RMahasiswa; DEKLARASI RECORD Tipe record tidak hanya digunakan untuk deklarasi variabel tunggal, tetapi sering digunakan bersama-sama denga tipe array atau tipe pointer. Misalkan ada 80 mahasiswa dalam suatu kelas, maka dibuat deklarasi array of record. Type RMahasiswa = Record Nama : String; NIM : String; Nilai : Real; End; Var M : Array[1..80] of RMahasiswa; MENGGUNAKAN TIPE DATA RECORD Struktur Record : Tiap-tiap komponen field dari record dipergunakan dengan cara menuliskan : pengenal-record.pengenal-field[.pengenal-field] dapat STATEMEN WITH With adalah kata terlindung, yang digunakan untuk menyingkat penulisan variabel record Bila pemrogram ingin mencapai field. Sintaks With : With <identifier variabel-record> Do <statemen> atau With <identifier variabel-record> Do Begin <statemen1>; ... <statemen n>; End; VARIANT RECORD Variant record, adalah record dimana diperlukan pendefinisian kembali field-field untuk menampung dua atau lebih keinginan yang berbeda tapi masih dalam satu struktur. Keuntungan dari penggunaan variant record adalah dalam penghematan memory. VARIANT RECORD Contoh : Type TipeBacaan = (BukuTeks,Majalah); Bacaan = Record KodePerpus : String[7]; TglBeli : String[8]; Penerbit : String[25]; Case Tipe : TipeBacaan of Majalah : (NomorMajalah : string[10]); BukuTeks : (Pengarang : String[25]; Edisi : byte); end; Var DataBacaan : Bacaan;