Setelah membahas tentang tipe data array pascal dalam 4 tutorial sebelum ini, kita akan beralih ke tipe data bentukan lainnya, yakni record. Kali ini saya akan membahas tentang pengertian dan cara penggunaan tipe data record dalam bahasa pemrograman pascal.
Pengertian Tipe Data Record Pascal
Tipe data record adalah tipe data khusus yang komponennya terdiri dari berbagai jenis tipe data lain. Sebuah record berisi beberapa variabel lain yang 'dipaketkan'. Konsep struktur data seperti ini sedikit mirip dengan konsep object dalam bahasa pemrograman modern (walaupun di dalam pascal juga terdapat konsep tentang object).
Record juga mirip dengan array, dimana kita bisa membuat sebuah variabel yang berisi berbagai element. Perbedaannya, record bisa menampung berbagai jenis tipe data, tidak hanya 1 tipe data seperti array.
Cara Penggunaan Tipe Data Record Pascal
Untuk membuat record di dalam pascal, kita bisa mendeklarasikannya di bagian type atau di bagian var. Jika digunakan di dalam bagian var, cara penulisannya adalah sebagai berikut:
var  nama_record:    record      variabel: tipe_data;      variabel: tipe_data;      variabel: tipe_data;    end;
Perhatikan bahwa untuk membuat record, diawali dengan nama_record. Ini adalah variabel yang akan menampung seluruh isi record. Setelah itu, pembuatan 'isi' record berada di antara perintah record dan end;. Disinilah seluruh variabel yang menjadi 'isi' record di defenisikan.
Sebagai contoh, saya akan membuat sebuah record 'siswa' yang terdiri dari nama, umur, sekolah, dan kota. Berikut cara penulisannya:
var  siswa: record         nama: string[20];         umur: integer;         sekolah: string[30];         kota: string[20];         end;
Sekarang, variabel 'siswa' adalah tipe data record yang terdiri dari nama, umur, sekolah, dan kota. Bagaimana cara mengakses record ini?
Untuk mengakses variabel di dalam record (atau disebut juga sebagai field), digunakan karakter titik ( . ), seperti contoh berikut:
siswa.nama:= 'Anto'; siswa.umur:= 17; siswa.sekolah:= 'SMA 1 Durian Runtuh'; siswa.kota:= 'Pelembang';
Dalam kode diatas, saya mengisi beberapa data kedalam record 'siswa'. Perhatikan bahwa isi masing-masingnya harus bersesuaian dengan tipe data sewaktu kita merancang record. Untuk nama, bisa diisi dengan string[20], sedangkan untuk umur bisa diisi dengan angka bulat (integer).
Berikut kode lengkap cara penggunaan struktur record di dalam pascal:
program tipe_record; uses crt; var  siswa: record         nama: string[20];         umur: integer;         sekolah: string[30];         kota: string[20];         end; begin  clrscr;   siswa.nama:= 'Anto';  siswa.umur:= 17;  siswa.sekolah:= 'SMA 1 Durian Runtuh';  siswa.kota:= 'Pelembang';   writeln('Nama : ',siswa.nama);  writeln('Umur : ',siswa.umur);  writeln('Sekolah : ',siswa.sekolah);  writeln('Kota : ',siswa.kota);   readln; end.
Pada kode diatas, saya membuat sebuah record siswa, mengisinya dengan beberapa data, kemudian menampilkan isi record menggunakan perintah writeln.
Dalam tutorial pascal kali ini kita telah berkenalan dengan tipe data record, serta mempelajari cara penulisannya. Berikutnya, saya akan membahas perintah with yang bisa digunakan dalam pengaksesan data record.
KERENNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Hahaha, panjang bgt huruf 'N'nya gan…
Oh… record di Pascal bener-bener mirip sama konsep object di OOP ya.
Mirip memang gan, tapi di record pascal kita tidak bisa menambahkan method (fungsi).
Min minta 2 contoh dong tapi ngelanjutin contoh diatas
begin
clrscr;
siswa.nama:= 'Anto';
siswa.umur:= 17;
siswa.sekolah:= 'SMA 1 Durian Runtuh';
siswa.kota:= 'Pelembang';
writeln('Nama : ',siswa.nama);
writeln('Umur : ',siswa.umur);
writeln('Sekolah : ',siswa.sekolah);
writeln('Kota : ',siswa.kota);
readln;
end.
Nah pada bagian itu, apakah bisa ditambah seperti ini?
siswa.nama[2]:= 'Anto';
siswa.umur[2]:= 17;
siswa.sekolah[2]:= 'SMA 1 Durian Runtuh';
siswa.kota[2]:= 'Pelembang';
writeln('Nama : ',siswa.nama[2]);
writeln('Umur : ',siswa.umur[2]);
writeln('Sekolah : ',siswa.sekolah[2]);
writeln('Kota : ',siswa.kota[2]);
readln;
end.
Jika tidak bisa, apakah ada cara lain agar dua2nya bisa terlihat pada output dengan nama/umur/sekolah,dll yang berbeda. thanks admin
Maksudnya jadi seperti tipe data array yang di kolaborasikan dengan tipe data record. Thanks min
Bisa gan, silahkan langsung kesini: https://www.duniailkom.com/tutorial-belajar-pascal-cara-membuat-array-dari-struktur-data-record-pascal/
Pembahasannya sama persis dengan yang agan tanyakan…
https://www.duniailkom.com ini bagus banet cara pembelajarannya. Semua materi dibahas dengan bahasa yang simple sehingga mudah dipahami. Terima Kasih…. ngomong-ngomong ditunggu ebook pascalnya lhoo hehehe
Hehe.. siap terimakasih untuk dukungannya, tapi kayaknya masih agak lama. Soalnya saat ini saya masih fokus ke web programming dulu..
maaf kawan kawan.. kenapa harus di tambahkan [20] yah dibelakang String ? maaf karna saya masih minim pengetahuan
Silahkan dipelajari tutorial ini secara berurutan sis, kalau bisa dari part 1. Maksud dari angka [20] itu saya bahas di materi tentang tipe data string: https://www.duniailkom.com/tutorial-belajar-pascal-pengertian-dan-cara-penggunaan-tipe-data-string-pascal/
trimakasih kak buat ilmu nya
Siip, sama2.. semoga bisa bermanfaat..
keren abiss kak ,sangat bermanfaat ilmunya.
Kalo buat di bagian type bagaimana? apakah seperti ini
type
siswa: record
nama:string;
umur:integer;
end;
atau
nama dan umur masuk ke dalam variable jadi seperti ini
type
siswa: record
var
nama:string;
umur:integer;
yang saya bingung "end;" di taruh di mana ya? mohon penjelasannya
asli gan, dari sekian banyak blog yang sudah gw baca cuma disini gw bisa mengerti isi pembahasannya.
Hehe, terimakasih… semoga materinya bisa bermanfaat.
Terimakasih sudah berbagi . Super manfaat tuk saya
Perbedaannya, record bisa menampung berbagai jenis tipe data, tidak hanya 1 tipe data seperti array.apa maksudny nii bang,,setai saya array juga bisa lebih dari satu tipe data kok,contoh array of string,array of integer,array of char,gimana bang?????????.
Maksudnya it dalam 1 program record dapat menampung banyak tipe data sedangkan array hanya bisa menampung 1 tipe data..
Misal variabel Nilai 1, nilai 2, dan nilai 3 tipe datanya semua integer, sedangkan record bisa nilai 1 tipe datanya integer, nilai 2 tipe dayanya string, nilai 3 string,…
Kurang lebih seperti it penjelasannya