BAB I
PENYAJIAN DATA SEDERHANA
DAN STRUKTUR DATA
Struktur data adalah suatu koleksi atau kelompok data yang dapat dikarakterisasikan oleh organisasi serta operasi yang didefinisikan terhadapnya.
Data dapat dikategorikan menjadi :
1. Type data sederhana, terdiri atas :
a. Data sederhana tunggal, misal : Integer, Real, Boolean & Karakter
b. Data sederhana majemuk, misal : string
(tipe data ini diorganisasikan menjadi berbagai struktur data)
2. Struktur Data, terdiri atas :
a. Struktur data sederhana, misal : Array & record b. Struktur data majemuk, terdiri atas :
- Linier, misal : Stack, Queque & linear linked list - Non linier, misal : Binary tree
Kategori tersebut digunakan pada storage utama. Sedangkan untuk storage tambahan, struktur data dikenal sebagai organisasi file.
Organisasi file terdiri dari : 1. Organisasi Sequential, 2. Organisasi Relative
3. Organisasi Indexed Sequential 4. Organisasi Multikey
Dua buah struktur data sederhana adalah array atau larik dan record
atau rekaman.
- Array adalah struktur data yang terurut dan homogen, terdiri dari item yang sama typenya.
1. TIPE DATA SEDERHANA
Suatu jenis data tertentu akan disimpan didalam variabel yang sesuai jenisnya. Jenis variabel menentukan rangkaian nilai yang dibutuhkan sewaktu program dilaksanakan.
a. Bilangan Integer
Integer adalah Bilangan bulat yang tidak mengandung pecahan dan biasanya disajikan dalam memori komputer sebagai angka bulat.
Dalam aritmatika komputer integer disajikan dengan rumus :
N <= 2n-1 – 1
n merupakan jumlah bit didalam memori yang bersangkutan.
Ada 5 tipe data yang termasuk dalam kelompok ini antara lain :
Tipe Batas Nilai Ukuran dlm
Byte
Byte 0…255 1
Shortint -128…127 1
Integer -32768…32767 2
Word 0…65535 2
Longint -2147483648…2147483647 4
Tipe data juga menentukan macam operasi yang bisa dilaksanakan. Operator – operator yang bisa dikerjakan dengan integer antara lain :
Operator Kegunaan
+ Penjumlahan
- Pengurangan
* Perkalian
Div Pembagian
Mod Sisa Pembagian
Contoh :
3 div 4 = 0 seharusnya 0,75
b. Bilangan Real
Bilangan Real adalah Bilangan numerik yang terdiri dari bilangan Pecahan dan bilangan Tak rasional. Jenis data rela ditulis menggunakan titik atau koma desimal.
Bilangan real disimpan ke dalam memori komputer memakai sistem Floating Point Merupakan versi yang disebut notasi ilmiah atau Scientific notation.
Penyajian data terdiri atas dua bagian : mantissa (pecahan) dan index yang disebut eksponen atau karakter yang menetapkan tempat dari titik radix terhadap digit tersebut.
Secara umum bilangan real (X) memiliki rumus :
X = M * R E
Dimana M dijadikan pecahan, R adalah radixnya dan E merupakan eksponennya.
Dua kesukaran yang mungkin timbul di dalam aritmatika bilangan real ialah :
1. Pembatalan dua bilangan dekat tetapi tidak sama, dari tanda yang berlawanan sebagai hasil dari suatu penambahan (disebut kehilangan arti)
2. Kelebihan bilangan karena proses pembagian diakibatkan oleh bilangan pembagi yang kecil.
Ada 5 macam data yang terdapat dalam bilangan real antara lain :
Tipe Batasan Nilai Digit Ukuran dlm byte
Real 2.9 x 10-39…1.7 x 1038 11 – 12 6
Single 1.5 x 10-45…3.4 x 1038 7 – 8 4
Operator yang bisa dioperasikan pada tipe data real adalah :
Operator Kegunaan
+ Penjumlahan
- Pengurangan
* Perkalian
/ Pembagian
c. Boolean
Suatu variabel boolean atau logikal hanya dapat berisikan nilai true dan false, yang kerap kali dinyatakan pula sebagai 1 dan 0. Oleh karena itu sebuah satuan data dapat cukup berisi satu bit saja.
Beberapa macam tipe data boolean antara lain :
Tipe Range Ukuran dalam
byte
Boolean Byte-sized 1 (8 bit)
ByteBool Byte-sized 1 (8 bit)
WordBool Word-sized 2 (16 bit)
LongBool LongInt-sized 4 (32 bit)
Operator yang digunakan pada tipe data Boolean adalah Operator Relasional. Operator Relasional tersebut antara lain :
Operator Kegunaan
= Sama Dengan
< Lebih Kecil dari > Lebih Besar dari
<= Lebih Kecil atau sama dengan >= Lebih besar atau sama dengan <> Tidak sama dengan
d. Karakter
Karakter yang dikenal dalam komputer biasanya mencakup : 1. 26 Huruf Besar Latin
2. 26 Huruf Kecil Latin 3. 10 Digit Arab
4. Karakter Khusus ( aritmatika, tanda baca, dll ) 5. Ruang Kosong atau Blank
6. Karakter Pengendali
Tipe data Karakter hanya dapat menampung satu karakter saja dan mengalokasikan satu byte memori.
Default dari variabel yang dideklarasikan dalam tipe data karakter adalah 256 kecuali ditentukan terlebih dahulu
Contoh : Var
Kalimat : String;
Nama : String[25]
Alamat : String[30]
Operasi yang berlaku terhadap string / karakter antara lain : 1. Len (String)
Adalah Operasi untuk menghitung length atau panjang String. 2. Concat(S1, S2)
Adalah Operasi Concatenation atau penyambungan 2 buah string 3. SubStr(S, i, j )
Adalah Operasi untuk membuat suatu string baru dengan cara mengambil beberapa karakter berurutan dari suatu string yang diketahui.
Dimana S = String, i = Mulai Pengambilan string, j = Jumlah string yang diambil
4. Insert(S1, S2, j)
Adalah Operasi yang menyisipkan string S2, Di dalam String S1.
Sedemikian sehingga karakter pertama dari S2 mengantikan posisi
karakter ke j dari S1, Selesai dengan seluruh karakter string S2
dilanjutkan lagi dengan sisa string S1.
5. Delete(S, i, j)
Lat 1 – 1 :
Manipulasi String Untuk :
a. “ UNTA MATI “
b. “ AKU IKA “
c. “ SI EMEN AJE “
d. “ INFO ANA “
2. Tentukan jumlah memori yang digunakan dan berapa kali setiap variabel di akses pada program berikut ini :
PROGRAM PERKALIAN MATRIK ;
USES CRT
WRITE (‘ BARIS MATRIK PERTAMA ? ‘); READLN (M);
WRITE (‘KOLOM MATRIK PERTAMA / BARIS MATRIK KE DUA ? ‘); READLN (N); WRITE (‘KOLOM MATRIK KE DUA ? ‘); READLN (L);
WRITELN;
WRITELN; END;
WRITELN (‘ PERKALIAN MATRIK ‘); FOR I := 1 TO M DO
BEGIN
FOR J := 1 TO N DO BEGIN
C(I, J) := 0 ;
FOR K := 1 TO L DO
C(I, J) := C[I, J] + A [I, K] * B [K, J] ; END;
END;
CLRSCR;
WRITELN ( ‘ HASIL DARI PERKALIAN MATRIK : ‘); WRITELN ;
FOR I := 1 TO M DO BEGIN
FOR J := 1 TO L DO WRITE ( C [I, J]:9:2) ; WRITELN