Array & Record
Array & Record
• Tipe elemen larik dapat berupa tipe sederhana, tipe terstruktur atau
tipe larik lain.
Contoh :
L[4] {mengacu elemen keempat dari larik L }
NamaMhs[‘b’] {mengacu elemen kedua dari larik NamaMhs}
P[k] {mengacu elemen ke-k dari larik P, asalkan nilai k sudah terdefinisi }
Meng inisialkan Array (Larik)
• menginisialisasi elemen larik adalah memberikan harga awal untuk
seluruh elemen larik, misalnya menginisialisasi dengan nilai 0 seperti
di bawah ini :
Procedure InisDgn0 (output A:larik, input N:integer )
{menginisialisasi setiap elemen larik A[1..N] dengan nol}
{K. Awal : N adalah banyak elemen efektif larik, nilainya terdefinisi}
{K. Akhir : seluruh elemen larik A bernilai nol}
Meng inisialkan Array (Larik) - 2
Contoh :
Deklarasi :
K : integer
Deskripsi :
for k <- 1 to N do
A[k] <- 0
endfor
Mengisi elemen Array dari piranti masukan
• Elemen larik dapat diisi dengan nilai yang dibaca dari piranti masukan seperti
contoh di bawah ini :
Deklarasi :
K : integer
Deskripsi :
for k <- 1 to N do
read (A[k])
endfor
Array Bertype Tersuktur
• Larik tidak hanya dapat berisi data bertype tunggal, tapi dapat juga
berisi data yang bertipe terstruktur
Contoh :
const Nmaks = 100
type Mahasiswa : record
<nim : integer,
nama_mhs : string,
KodeMK : string,
Nilai : char >
TabMhs : array[1..Nmaks] of Mahasiswa
Array Bertype Tersuktur - 2
Contoh : mengacu pada elemen TabMhs
TabMhs[2].Nim
{mengacu field Nim dari elemen kedua larik }
Write(TabMhs[k].KodeMK)
{menuliskan field KodeMK dari elemen ke k dari larik.}
Deklaasi Array
Ada tiga hal yang harus di ketahui dalam mendeklarasikan array, yaitu :
1. Type data array
Contoh :
int A[5] ;
Misalnya :
int A[4][4]
Array tiga dimensi
Array tiga dimensi digunakan untuk mengelola data dalam bentuk 3 dimensi atautiga sisi.
Deklarasi:
Type_Data Nama_Variabel [index] [index2] [index3]
Misalnya :
int A[4][3][2]
Pencarian Array
Operasi pencarian ialah upaya menemukan nilai tertentu dalam array.
Untuk melakukan operasi ini kita perlu mengakses semua elemen array
dan membandingkannya dengan nilai yang hendak dicari.
REVIEW RECORD (REKAMAN)
• 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 ditentukan oleh pemrogram.
• Rekaman disebut juga tipe terstruktur.
Contoh :
Sebagai contoh dalam suatu tabel memiliki kolom nama, alamat, tanggal lahir, pekerjaan. Maka satu record
adalah data sau orang yang terdiri atas nama, alamat, tanggal lahir dan pekerjaan.
Deklarasi Record
1. type Titik : record <x : real, y : real>
{jika P dideklarasikan sebagai Titik maka mengacu field pada P adalah P.x dan P.y.}
2. Didefinisikan tipe terstruktur yang mewakili Jam yang dinyatakan sebagai jam (hh), menit (mm) dan detik
(ss), maka cara menulis type Jam adalah :
Deklarasi :
type JAM : record
<hh : integer, {0…23}
mm : integer, {0…59}
ss : integer {0…59}
>
Jika J adalah peubah (variabel) bertipe Jam maka cara mengacu tiap field adalah J.hh, J.mm dan J.ss
Record dalam Bahasa C
1. type Titik : record <x : real, y : real>
diterjemahkan menjadi :
typedef struct { float x;
float y;
} Titik;