2. Tipe Terstruktur
• Tipe terstruktur adalah tipe yang
berbentuk rekaman (record)
• Rekaman (record) disusun oleh satu atau
lebih field
• Tiap field menyimpan data dari tipe dasar
tertentu atau dari tipe bentukan lain yang
sudah didefinisikan sebelumnya.
• Nama rekaman (record) ditentukan sendiri
oleh pemrogram
7. Contoh
DEKLARASI
type JAM = record
< hh : integer,
mm : integer,
ss : integer
>
J1, J2 : JAM
Type MHS = record
< NIM : integer,
nama : string,
usia : integer
>
Type Titik = record
<x:real, y:real>
Type Kompleks =
record <a:real, b:real>
8. Menghitung Titik Tengah
DEKLARASI
Type Titik = record < x: real,y: real>
P1, P2, P3 : Titik
ALGORITMA
input (P1.x, P1.y)
input (P2.x, P2.y)
P3.x ← (P1.x + P2.x) / 2
P3.y ← (P1.y + P2.y) / 2
output ( P3.x, P3.y )
9. Konversi Jam Total Detik
DEKLARASI
Type Jam = record < hh : integer ,
mm : integer,
ss : integer >
J : Jam
Total_detik : integer
ALGORITMA
input (J.hh, J.mm, J.ss)
total_detik ← (J.hh * 3600) + (J.dd * 60) + J.ss
output (total_detik)
10. Konversi Total Detik Jam
DEKLARASI
Type Jam = record <hh : integer ,
mm : integer,
ss : integer>
J : Jam
Total_detik : integer
Sisa : integer
ALGORITMA
input (total_detik)
J.hh ← total_detik div 3600
Sisa ← total_detik mod 3600
J.mm ← sisa div 60
J.ss ← sisa mod 60
output (J.hh, J.mm, J.ss)
11. Array Bertipe Record
DEKLARASI
const Nmaks = 100
type Mhs = record < NIM : string
Nama : string
KdMata : string
Nilai : char >
TabMhs : array[1..Nmaks] of Mhs
k : integer
N : integer
ALGORITMA
input(N)
for k ← 1 to N do
input(TabMhs[k].NIM)
input(TabMhs[k].Nama)
input(TabMhs[k].KdMata)
input(TabMhs[k].Nilai)
endfor
for k ← 1 to N do
output(TabMhs[k].NIM)
output(TabMhs[k].Nama)
output(TabMhs[k].KdMata)
output(TabMhs[k].Nilai)
endfor