Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 23

Dasar Pemrograman

Record
 Record merupakan salah satu tipe data
terstruktur yang terdiri atas sekumpulan
variabel data
 Record memungkinkan untuk memanipulasi
sekumpulan elemen data dengan tipe yang
tidak sama, yang seolah-olah merupakan
satu obyek
 Variabel data penyusun record disebut field
 Record sering digunakan dalam program
terutama yang berhubungan dengan file.
Misalnya, sebuah record tentang data
seseorang, yang terdiri dari nama, alamat,
umur dan pekerjaan.
 Semua data tersebut dihimpun dalam satu
record dengan nama, alamat, umur dan
pekerjaan sebagai field- fieldnya
Format:

Type Name of record = record


name of field (1) : type of field (1);
name of field (2) : type of field (2);
name of field (3) : type of field (3);
: : :
: : :
name of field (n) : type of field (n);
end;
Example:
Type Person = record
name : string;
age : integer;
height : real;
weight : real;
end;
jMichaelMoore
name
Format: age
name of variable : name of record; height
weight

Example:
var jMichaelMoore : Person;
var bartSimpson : Person;
bartSimpson
name
age
height
weight
Example: Declaring the record and instances of
the record
type
Person = record
name : string;
age : integer;
height : real;
weight : real;
end; (* Declaration of a Person *)
begin
var jMichaelMoore : Person;
var bartSimpson : Person;
: : :
end.
Assignment (field basis):
e.g.,
bartSimpson.name := 'Bart';
bartSimpson.age := 10;
bartSimpson.height := 48;
bartSimpson.weight := 80;

Assignment (all fields are copied – if the records


are declared to be the same type)
e.g.,
jMichaelMoore := bartSimpson;
Example:
Cat = record
name : string [NAME_LENGTH];
end; (* Declaration of a Cat *)
Dog = record
name : string [NAME_LENGTH];
end; (* Declaration of a Dog *)
begin Problem:
var aCat : Cat; • Cat <> Dog
var aDog : Dog; • Each has been declared to
aCat := aDog; be a different type of
end.
variable.
Example:

type
Pet = record
name : string;
end; (* Declaration of a Pet *)

begin
var aCat : Pet; OK:
var aDog : Pet; • Cat and Dog are of
aCat := aDog; the same type
end.
Allows you to refer to the fields of a record without having to constantly refer to the
name of the record variable.

Format:
with name of record variable do
body

Example:
with bartSimspon do
begin
writeln('Personal information:');
writeln('Name: ':8, name);
writeln('Age: ':8, age);
writeln('Height: ':8, height);
writeln('Weight: ':8, weight);
end; (* With do for Bart Simpson *)
program arrayRecord;
uses wincrt;

const MAX = 100;


type
Mhs = record
NIM : string[8];
Nama: string[25];
Nilai: array[1..3] of real;
End;
TKumpulanMhs = array[1..MAX] of TMhs;

Var
A:KumpulanMhs;
I, N: integer;
NA: real;
Begin
Write (‘Masukkan jumlah siswa yang akan
diisikan: ’);
Readln (N);
Writeln;
{memasukkan data}
Write (‘Memasukkan data’);
Write (‘----------------------------------------------’);
For i:= 1 to N do
Begin
Writeln (‘Data siswa ke-’, i);
With A[i] do
Begin
Write (‘ NIM : ’); readln(NIM);
Write (‘ Nama : ’); readln(Nama);
Write (‘ Nilai’);
Write (‘ Nama ke-1 (Kuis) : ’); readln(Nilai[1]);
Write (‘ Nama ke-2 (UTS) : ’); readln(Nilai[2]);
Write (‘ Nama ke-2 (UAS) : ’); readln(Nilai[3]);
End;
Writeln;
End;
{menampilkan data}
Writeln(‘DAFTAR NILAI MAHASISWA’);
Writeln(‘----------------------------------------------’);
Writeln(‘NIM’:8, ‘’:2, ‘Nama’:25, ‘’:2, ‘NILAI’);
Writeln(‘----------------------------------------------’);

For i:=1 to N do
Begin
With A[i] do
Begin
NA := (0.2*Nilai[1]) + (0.3*Nilai[2]) + (0.5*Nilai[3]);
Write (NIM:8, ‘’:2, NAMA:25, ‘’:2, NA:0:2);
End;
Writeln;
End;
Readln;
End.
program Welcome;
uses
WinCrt;
Const
maks = 100;
type
TSiswa = record
nim : string[8];
nama: string[25];
end;
TKumpulanSiswa = array[1..maks] of TSiswa;

var
i, n : integer;
A: TKumpulanSiswa;
begin
clrscr;
Writeln ('Jumlah Siswa: ');
readln (n);
writeln;

{memasukkan data dalam array}


writeln ('----------------------------------------------');
for i:= 1 to n do
begin
writeln ('Data Siswa ke-', i);
write ('Nim : '); readln (a[i].nim);
write ('Nama : '); readln (a[i].nama);
writeln;
end;
{menampilkan data dari array}
writeln ('DAFTAR SISWA');
writeln ('----------------------------------------------');
writeln ('NIM ', ' ':2, 'NAMA');
writeln ('----------------------------------------------');

for i:= 1 to n do
begin
writeln (a[i].nim, ' ':2, a[i].nama);
end;

end.
1. Dengan bantuan variabel array, simpan dan tampilkan
sepuluh jenis musik ini: pop, dangdut, jazz, keroncong,
reggae, acapella, rock, heavy metal, instrumental, blues

2. Dengan array dan record simpan dan tampilkan data


barang berikut:
- Nama: sari apel, kualitas: A, harga: 550
- Nama: jenang apel, kualitas B, harga: 750
- Nama: buah apel, kualitas C, harga: 950

You might also like