Computer Science, University of Brawijaya
Putra Pandu Adikara, S.Kom
Algoritma dan Struktur Data
Tipe Data: Array dan String
Macam Tipe Data
Tipe data digunakan untuk menentukan
batasan nilai yang digunakan suatu
peubah (variabel)
Macam tipe data :
Tipe Sederhana (primitif)
Tipe Terstruktur
Tipe String
Tipe Reference/Pointer
Tipe Data Sederhana
Disebut juga tipe data skalar, yaitu suatu tipe data yang
memungkinkan sebuah peubah untuk menyimpan sebuah
nilai
Macam tipe sederhana :
Tipe ordinal/integral
• ShortInt, Integer, LongInt, Byte, Word
subrange, dan enumerated
Tipe floating point/real
• Real, Single, Double, Extended
Tipe char
• Char
Tipe boolean
• Boolean
Tipe Data Terstruktur
Adalah suatu tipe data yang membolehkan
sebuah peubah untuk menyimpan lebih dari satu
data
Macam tipe terstruktur :
Tipe Larik (Array)
Tipe Rekaman (Record/Struct)
Tipe Objek (Objek/Class)
Tipe Himpunan (Set/Enum)
Tipe Berkas (File)
Larik (Array)
Adalah suatu struktur data yng dapat
menyimpan sekumpulan elemen dengan tipe
yang sama
Larik disimpan pada memory yang berurutan
pada komputer
Berbeda dengan variabel biasa yang hanya bisa
menyimpan sebuah nilai
Nama lain : tabel, vektor atau peubah majemuk
Penggunaan Larik
Bila dibutuhkan suatu tempat
penyimpanan (di memory) yang dapat
menyimpan banyak data dengan jenis data
yang seragam
Deklarasi Larik
Larik adalah struktur data yang Statik, artinya jumlah elemen
larik harus sudah diketahui sebelum program dieksekusi
Ada 2 cara mendeklarasikan (Pada TP) :
1. Sebagai Peubah,
misal :
Data : array[0..4] of integer;
2. Sebagai Tipe Baru,
misal : Type Data : array[0..4] 0f integer;
var Nilai: Data;
Nim : Data;
Inisialisasi biasanya memberikan nilai harga awal pada
seluruh elemen larik. Biasanya digunakan nilai 0 (nol) atau ' '
(karakter kosong).
Memproses Larik 1 Dimensi
Untuk mengakses dan memprosesnya
digunakan Indeks.
Contoh :
Larik A yang memiliki 4 elemen, biasa ditulis :
A[0], A[1], A[2],A[3]
Misal
WriteLn(A[0]);
A[0] := 10;
Array MultiDimensi
adalah suatu array/larik yang memiliki dimensi
dgn indeks lebih dari satu
dapat juga disebut sebagai suatu array yang
beranggotakan elemen yang juga berupa suatu
array
Contoh : Matrik, dan Tabel
Karakteristik Array Multi Dimensi
Karena juga merupakan suatu array, maka
semua elemennya harus memiliki tipe data yang
sama
Merupakan struktur data yang statik, artinya
jumlah elemennya sudah harus ditentukan
terlebih dahulu sebelum progran dijalankan, dan
jumlah tersebut tidak dapat diubah ketika
program dijalankan
Pemanfaatan Memory pada Array Multi Dimensi
Semakin banyak Dimensi arraynya, semakin
besar memory yang digunakan
Contoh : untuk array 2 dimensi berukuran 4 x 4
berari membutuhkan tempat 16 ruang memory
Penyimpanan pada komputernya tetap tersusun
sebagai memory yang berurutan
Deklarasi Array Multi Dimensi
sama seperti pendeklarasian suatu array, tetapi
indexnya jumlahnya lebih dari satu
Contoh :
Data : array [1..4,1..4] of integer;
Keluarga : array[1..50,1..4,1..4] of
integer;
Inisialisasi sama seperti array 1 dimensi
Memproses Larik Multi Dimensi
diproses berdasarkan indexnya
indexnya sebanyak dimensi arraynya
di dalam pemrograman biasanya digunakan
looping bersarang/yang bertumpuk (looping
dalam looping)
Larik A yang memiliki dimensi 1x3, biasa ditulis :
A[0][0], A[0][1], A[0],A[3]
Misal
WriteLn(A[0][1]);
A[0][3] := 10;
Enumerasi
Konstanta dengan tipe array/list yang bisa diakses
menggunakan indeks berupa nama
Contoh:
type
Status = (Active, Passive, Waiting);
StatusMap = array[Status] of string[7];
const
StatStr: StatusMap = ('Active', 'Passive',
'Waiting');
Memproses Enumerasi
contoh nilai yang diisikan ke StatStr:
StatStr[Active] = 'Active'
StatStr[Passive] = 'Passive'
StatStr[Waiting] = 'Waiting'
Subrange
Subrange adalah kelompok/himpunan nilai yang dibuat
dari kelompok yang sudah ada sebelumnya.
Deklarasi Subrange:
type RangeName = Low..High;
Misal:
type AdultMemberAge =
18...30;
type Players = (GoalKeeper, RightDefender, Stopper,
Libero, LeftDefender, MiddleLeft,
MiddleCenterLeft, MiddleCenterRight, MiddleRight,
Forward1, Forward2 );
type MiddleCourt = MiddleLeft..MiddleRight;
String
String pada dasarnya merupakan rentetan karakter
(char). Konstanta string ditulis dengan awalan dan
akhiran null terminated char ('') dgn kode ASCII #0,
String 'Hello‘
H
e
l
l
o
\0
Deklarasi string:
str: string[10];
str: string;
contoh pertama array str dapat menyimpan 10 elemen
bertipe char.