Rabu, 24 Februari 2010

Implementasi Struktur Data dalam Lingkup Array

Pada pemrograman prosedural, setiap data mempunyai jenis. Jenis data menentukan bagaimana mengartikan nilai dari suatu data serta operasi apa yang dapat dilakukan terhadap data tersebut. Secara umum jenis data dapat digolongkan menjadi 4 golongan, yaitu :
1. jenis dasar, adalah jenis data yang dianggap sudah terdefinisi misalnya integer, real, boolean, character; suatu data yang memiliki jenis ini setiap saat hanya dapat memiliki satu nilai.
2. jenis bentukan, adalah jenis data yang merupakan komposisi dari jenis dasar; suatu data yang memiliki jenis ini setiap saat hanya dapat memiliki satu nilai yang sesuai dengan susunan dari jenis dasar yang didefinisikannya.
3. tabel, adalah jenis data yang terdiri atas sekumpulan unsur berjenis sama yang tersusun secara kontinu dan setiap unsur dapat diperoleh melalui indeks tabel; suatu data yang memiliki jenis ini setiap saat dapatmemiliki banyak nilai sesuai dengan ukuran tabel.
4. pointer, adalah jenis data yang menyimpan alamat komputer dari suatu data.
Data yang ada di dunia nyata seringkali amat kompleks, sehingga membutuhkan suatu abstraksi dari representasi data tersebut, agar memudahkan dalam merancang struktur datanya. Dikenal 3 tingkatan abstraksi yaitu:
1. definisi fungsional,
2. representasi lojik,
3. representasi fisik
Pada definisi fungsional, dilakukan pendefinisian suatu struktur data dan operator-perator yang berlaku pada struktur tersebut. Untuk melakukannya tidak digunakan notasi khusus melainkan mendefinisikan dengan kata-kata.
Representasi lojik adalah rincian jenis dari struktur data, menyangkut nama jenis dan jenis-jenis operator. Untuk membuat representasi lojik digunakan notasi algoritmik. Representasi ini tak bergantung pada memory komputer.
Pada representasi lojik belum digunakan jenis data yang sudah dikenal di atas. Relasi antara definisi fungsional dan representasi lojik adalah satu-ke-satu, artinya setiap definisi fungsional hanya mempunyai satu representasi lojik. Representasi fisik adalah spesifikasi
dari struktur data sesuai dengan implementasinya pada memory komputer. Digunakan notasi algoritmik dan type-type dasar yang sudah dikenal. Pada dasarnya hanya ada dua macam representasi fisik yaitu: kontigu dan berkait. Untuk satu representasi lojik bisa dikembangkan menjadi banyak kemungkinan representasi fisik.
Dewasa ini sudah banyak berkembang bahasa-bahasa pemrograman tingkat tinggi yang pemakaiannya sudah sangat mudah (tinggal klik dan drag saja). Program adalah kumpulan intruksi atau perintah yang disusun sedemikian rupa sehingga membentuk urutan nalar yang tepat untuk menyelesaikan suatu persoalan, pada dasarnya semua bahasa-bahasa pemrograman mempunyai kode-kode program yang harus ditulis agar terbentuk sebuah obyek yang dapat bekerja sesuai dengan yang diinginkan.
Ada beberapa hal yang perlu diperhatikan dalam penyusunan program, khususnya aspek-aspek yang menyangkut aturan-aturan penulisan program. Sehingga dalam sebuah program terdapat alur-alur logika yang menyebabkan program dapat bekerja dengan benar, dan sebagian besar harus menggunakan pengelolahan data yang tersetruktur seperti array, linked list, antrian, dan lain-lain. Hal ini penting untuk dipelajari karena untukk satu bahasa program berbeda dengan bahasa program lain.
Dengan memahami aturan-aturan tersebut diharapkan program tersebut akan bisa dijalankan dengan baik dan memberikan hasil seperti yang diharapkan.
Untuk membantu aliran nalar dan data dari sebuah program, sering kali kita menggunakan alat bantu yang berupa grafik atau simbol-simbol yang menggambarkan kegiatan-kegiatan yang ada pada sebuah program yang disebut dengan bagan alir (flow chart). Dalam pembahasaan ini kami akan menyajikan struktur data dalam lingkup array, linked list, dan queue (antrian).

A. Array
Array atau larik adalah tipe struktur yang mempunyai komponen dalam jumlah yang tetap dan setiap komponen mempunyai data yang sama. Posisi masing-masing komponen dalam array dinyatakan sebagai nomor index.
Dalam sumber lain, Array adalah suatu tipe data terstruktur yang terdapat pada memori yang terdiri dari sejumlah elemen (tepat) yang mempunyai tipe data yang sama dan merupakan gabungan dari beberapa variabel sejenis serta memiliki jumlah komponen yang jumlahnya tetap. Elemen-elemen dari array tersusun seacara sequential dalam memori computer.

1. Array suatu dimensi
Array suatu dimensi tidak lain adalah kumpulan elemen-elemen yang identik, yang tersusun dalam satu baris. Elemen-elemen tersebuit memiliki type data yang sama, tetapi isi dari elemen tersebut boleh berbeda-beda.
Pendeklarasian array diawali denga kata baku type dan diikuti dengan nama array dan tanda samaq dengan (=), lalu kata baku array beserta range indeks dan diakhiri dengan kata baku of beserta type datanya.

Bentuk umum dari deklarasi tipe array adalah :
type pengenal = array [tipe_index] of tipe;
dengan pengenal : nama tipe data
tipe_index : tipe data untuk nomor index
tipe : tipe data komponen
Parameter tipe_index menentukan banyaknya komponen array tersebut. Parameter ini boleh berupa sembarang tipe ordinal kecuali logint dan sub jangkauan dari logint. Berikut contoh dari deklarasi :
type vek = array [1…..100] of integer;
menunjukkan bahwa vek adalah tipe data yang berupa array yang komponennya bertipe integer dan banyaknya 100 buah.
Deklarasi yang demikian ini disebut deklarasi array dimensi satu, yang kami sebut vektor.

2. Array dua dimensi
Array dua dimensi, yang sering digambarkan pada sebuah matrix adalah merupakan sebuah perluasan dari sebuah array satu dimensi. Jika pada array satu dimensi hanya terdiri dari sebuah baris dengan beberapa kolom elemen maka pada array dua dimensi terdiri dari beberapa baris dan beberapa kolom elemen yang bertype sama. Jika tipe komponen juga berupa larik lain, akan kita peroleh array demensi banyak. Sebagai contoh :
type Pkl = array [1…..100] of array [1…….5] of real;
menunjukkan bahwa Pkl adalah vektor yang terdiri dari 100 komponen, dengan tipe komponennya adalah sebuah vektor lain yang mempunyai 5 komponen bertipe real. Bentuk ini sering disebut dengan deklarasi array dimensi dua yang kami sebut sebagai tabel atau matrix.

3. Array tiga dimensi
Array tiga dimensi dapat digambarkan sebagai suatu benda ruang. Deklarasi pada array tiga dimensi tidak berbeda pada array satu dimensi dan dua dimensi yang telah dijelaskan sebelumnya, kecuali pada indeks array.

type Pkl = array [1…..100,1……5] of real;
contoh lain misalnya :
type Katro = array [boolean,1…..100,1……5] of char;
deklarasi diatas disebut sebagai deklarasi array dimensi tiga.
4. Array banyak dimensi
Sebenarnya array banyak dimensi tidak terlalu sering dipakai seperti halnya array satu dimensi, dua dimensi, dan tiga dimensi. Namun hal itu bukan berarti pascal tidak membolehkan anda memakainya. Array banyak dimensi ini pada dasarnya sama dengan array sebelumnya kecuali pada jumlah dimensinya saja.

Tidak ada komentar:

Posting Komentar