MAKALAH TENTANG
ARRAY
MAKALAH
(Array)
Makalah ini disusun untuk memenuhi tugas mata kuliah
“STRUKTUR DATA”
Dosen Pengampu : Bapak
Septia Lutfi, S.Kom, M.Kom
Disusun oleh :
Nama : Sopyan
Tirto Laksono
NIM :
2114R0879
TEKNIK
INFORMATIKA STMIK HIMSYA SEMARANG
BAB I
PENDAHULUAN
A.
Latar Belakang
Dalam
pemrogaman ada beberapa macam bahasa pemrogaman. Salah satunya adalah bahasa
pemrogaman C++. Dalam bahasa pemrogaman C++ terdapat penggunaan variabel array.
Namun penggunaan array tidak hanya pada pemrogaman, array juga banyak digunakan
untuk berbagai macam struktur data, seperti database.
Selanjutnya
kita harus memahami terlebih dulu pengertian struktur. Pada makalah ini kami
menuliskan telebih dulu pngertian dari struktur karena hal ini sangat
berhubungan erat dengan array yang nantinya berujung pada pengertian struktur
array, apa yang disebut array,
bagaimana struktur penulisannya, apa saja bentuk-bentuk array, semuanya akan
kita pelajari dalam makalah ini.
B.
Rumusan Masalah
Pada
makalah ini kami merumuskan beberapa hal :
1)
Pengertian
Struktur
2)
Pengertian
Array
a.
Karakteristik
array
b.
Deklarasi
array
3)
Penggunaan
Array
4)
Pengurutan
Array
5)
Operasi
Dasar Pada Array
6)
Bentuk-bentuk
Array
7)
Keunggulan
Array
8)
Kelemahan
Array
C.
Tujuan
1)
Untuk
memenuhi tugas dari dosen pada mata kuliah struktur data.
2)
Agar
pembaca mengerti dan apa yang dimaksud dengan struktur array, serta paham dalam
penggunaan, penerapan dan pengaplikasiannya.
BAB II
PEMBAHASAN
A.Pengertian
Struktur
Struktur
adalah kumpulan elemen-elemen data yang digabungkan menjadi satu kesatuan.
Masing-masing elemen data tersebut dikenal dengan sebutan field. Field data
tersebut dapat memiliki tipe data yang sama ataupun berbeda. Walaupun
field-field tersebut berada dalam satu kesatuan, masing-masing field tersebut
tetap dapat diakses secara individual.
Field-field
tersebut digabungkan menjadi satu dengan tujuan untuk kemudahan dalam
operasinya. Misalnya anda ingin mencatat data-data mahasiswa dan pelajar dalam
sebuah progam, untuk membedakannya anda dapat membuat sebuah record mahasiswa
yang terdiri dari field NIM, NAMA, ALAMAT, dan IPK serta sebuah record pelajar
yang terdiri dari field-field NAMA, NOMOR_URUT, ALAMAT< dan JUM_NILAI.
Dengan demikian akan lebih mudah untuk membedakan keduanya.
B.Pengertian
Array
Array
atau larik sendiri di definisikan sebagai pemesanan alokasi memory berurutan.
Definisi ini kurang tepat, karena terjadi kerancuan antara struktur data dan
representasinya. Memang benar array hampir selalu di implementasikan
menggunakan memory berurutan tapi tidak selalu demikian. Semua elemem array
bertipe sama. Array cocok untuk organisasi kumpulan data homogen yang ukuran
atau jumlah elemen maksimumnya telah diketahui dari awal. Homogen adalah bahwa
setiap elemen dari sebuah array tertentu haruslah mempunyai tipe data yang
sama.
Dari
perngertian struktur dan pengertian array di atas, maka dapat ditarik
kesimpulan bahwa struktur array adalah kumpulan elemen-elemen data yang
digabungkan menjadi suatu kesatuan yang memiliki tipe homogen (sama).
1)
Karakteristik
Array :
a.
Mempunyai
batasan dari pemesanan alokasi memori (bersifat statis).
b.
Mempunyai
tipe data sama (bersifat homogen).
c.
Dapat
diakses secara acak.
2)
Deklarasi
Array :
Ada
tiga hal yang harus diketahui dalam pendeklarasian, yaitu :
a.
Type
data array.
b.
Nama
variable array.
c.
Subkrip
/ index array.
·
Contoh
deklarasai array adalah sebagai berikut :
int
A[10], artinya variabel A adalah kumpulan data sebanyak 10 bilangan bertipe
integer.
C.Penggunaan
Array
Pada
dasarnya penggunaan array sangat luas tidak hanya digunakan pada bahasa
pemrogaman.
Contoh
penggunaan array sebagai berikut :
1)
Array
digunakan untuk suatu database, contoh : tabel.
2)
Array
digunakan untuk operasi matematika seperti vektor.
3)
Digunakan
dalam bentuk struktur data lain, contohnya list.
D.Pengurutan
Array
Pengurutan
atau sorting adalah proses yang paling sering dilakukan dalam pengolahan data,
pengurutan dibedakan menjadi dua, yaitu :
1)
Pengurutan
internal
Pengurutan dilakukan terhadap sekumpulan data di
media memory internal komputer di mana data dapat diakses elemennya secara
langsung.
2)
Pengurutan
eksternal
Pengurutan data di memory sekunder. Biasanya data
bervolume besar sehingga tidak mampu dimuat semuanya di memory utama.
E.Operasi
Dasar Pada Array
Operasi
terhadap elemen array dilakukan dengan pengaksesan langsung. Nilai di
masing-masing posisi elemen dapat di ambil dan nilai dapat disimpan tanpa
melewati posisi-posisi lain.
Terdapat
dua operasi, yaitu :
1)
Operasi
terhadap satu elemen/posisi array
2)
Operasi
terhadap array sebagai keseluruhan
a)
Dua
operasi paling dasar terhadap satu elemen/posisi adalah :
·
Penyimpanan
nilai elemen ke posisi tertentu di array
·
Pengambilan
nilai elemen dari posisi tertentu di array
b)
Operasi-operasi
dasar terhadap array secara keseluruhan adalah :
·
Operasi
penciptaan
·
Operasi
penghancuran
·
Operasi
pemrosesan tranversal
·
Operasi
pencarian (table look-up)
·
Operasi
sorting
Ø Penyimpanan dan
Pengambilan Nilai
Saat penyimpanan dan pengambilan nilai array,
biasanya bahasa pemrogaman menyediakan sintaks tertentu untuk penyimpanan dan
pengambilan nilai elemen pada posisi tertentu di array. Contoh :
A[5] = 78, berarti penyimpanan nilai 78 ke posisi
ke-5 dari array A
C = A[5], berarti pengambilan nilai elemen posisi
ke-5 dari array A
Ø Penciptaan dan
Penghancuran
Operasi penciptaan biasa disebut inisialisasi. Operasi
ini untuk mempersiapkan struktur data untuk operasi-operasi berikutnya. Operasi
penghancuran menyatakan ketidak berlakuan struktur data atau membebaskan
memory, menyerahkan memory ke manajemen memory agar dapat di pergunakan
keperluan lain. Operasi penghancuran penting terutama bila struktur data di
implementasikan secara dinamis menggunakan pointer.
Ø Pemrosesan Transversal
Operasi pemrosesan transversal adalah pemrosesan
mengolah seluruh elemen secara sistematik.
Ø Pencarian di Array (table
look-up)
Pencarian di array (table look-up) adalah proses
pencarian suatu nilai di array. Klasifikasi pencarian di array adalah :
1)
Pencarian
sekuen (sequential searching), yaitu :
a)
Tanpa
boolean, terbagi :
·
Tanpa
sentinen
·
Dengan
sentinen
b)
Menggunakan
boolean
2)
Pencarian
secara biner/dokotom (binary = dochotomy searching).
1)
Array
Satu Dimensi
Array satu dimensi yaitu kumpulan elemen-elemen
identik yang hanya terdiri dari satu baris atau hanya satu kolom saja alamat
penyimpanan data (indeks). Elemen-elemen tersebut memiliki tipe data yang sama,
tetapi isi dari elemen tersebut boleh berbeda.
Bentuk umum :
Tipe_data namaArray[n] = {elemen0, elemen1,
elemen2,…..,n};
n = jumlah elemen
contoh pada progam : int ukur[5] = {39, 40. 41, 38,
40};
·
int
adalah tipe data yang berupa bilangan bulat.
·
Ukur
adalah nama variabel array.
·
[5]
adalah ukuran untuk menyatakan jumlah maksimal elemen array.
·
{..}
adalah tempat pemberian nilai/elemen array.
2)
Array
Dua Dimensi
Array dua dimensi sering digambarkan sebagai sebuah
matriks, merupakan perluasan dari array satu dimensi. Jika array satu dimensi
hanya terdiri dari sebuah baris dan beberapa kolom elemen, maka array dua
dimensi terdiri dari beberapa baris dan beberapa kolom elemen bertipe sama
sehingga dapat digambarkan sebagai berikut :
Bentuk umum :
Tipe_data namaArray [m][n] = {{a,b,…z},{1,2,…,n-1}};
contoh : int lulus[4][3];
·
Nilai
4 untuk menyatakan banyaknya baris dan 3 untuk menyatakan banyaknya kolom.
Pendeklarasian
array dua dimensi hampir sama dengan pendeklarasian array satu dimensi, kecuali
bahwa array dua dimensi terdapat dua jumlah elemen yang terdapat dikurung
kurung siku dan keduanya boleh tidak sama. Elemen array dua dimensi diakses
dengan menuliskan kedua indeks elemennya dalam kurung.
Ø Pemetaan (mapping) array
dua dimensi ke storage :
Terbagi dua cara pandang (representasi) yang berbeda
:
1)
@M[i][j]
= M[0][0] + {(j – 1) * K + (i – 1)} * L
Secara kolom per kolom (coloumn major order / CMO)
2)
@M[i][j]
= M[0][0] + {(i – 1) * N + (j – 1)} * L
Secara baris per baris (row major order / RMO)
Keterangan :
·
@M[i][j]
= Posisi array yang di cari.
·
M[0][0]
= Posisi alamat awal indeks array.
·
i
= Baris
·
j
= Kolom
·
L
= Ukuran memory type data
·
K
= Banyaknya elemen per kolom
·
N
= Banyaknya elemen per baris.
3)
Array
MultiDimensi
Array ini seperti array dimensi dua tetapi dapat
memiliki ukuran yang lebih besar. Sebenarnya array dimensi banyak ini tidak
terlalu sering digunakan, tetapi sewaktu-waktu kalau dimensi yang dibutuhkan
banyak, maka array ini sangat memegang peranan yang penting.
Bentuk umum pendeklarasian array multidimensi :
Tipe_data namaArray[ukuran1][ukuran2]…[ukuranN];
Sebagai contoh :
int data_huruf[2][8][8];
·
contoh
di atas merupakan pendeklarasian array data_huruf sebagai array berdimensi
tiga.
G.Keunggulan
Array
Keunggulan
array adalah sebagai berikut :
1)
Array
sangat cocok untuk pengaksesan acak. Sembarang elemen di array dapat diacu
secara langsung tanpa melalui elemen-elemen lain.
2)
Jika
berada di suatu lokasi elemen, maka sangat mudah menelusuri ke elemen-elemen
tetangga, baik elemen pendahulu atau elemen peberus.
3)
Jika
elemen-elemen array adalah nilai-nilai independen dan seluruhnya harus terjaga,
maka penggunaan penyimpanannya sangat efisien.
H.Kelemahan
Array
Kelemahan
array adalah sebagai berikut :
Array
mempunyai fleksibilitas rendah, sehingga tidak cocok untuk berbagai aplikasi
karena array mempunyai batasan sebagai berikut :
1)
Array
harus bertipe homogen, kita tidak dapat mempunyai array dimana satu
elemenadalah karakter, elemen yang lain adalah bilangan atau tipe lain.
2)
Kebanyakan
bahasa pemrogaman mengimplementasikan array statik yang sulit diubah ukurannya
di waktu eksekusi. Bila penambahan dan pengurangan terjadi terus-menerus, maka
representasi statis :
·
Tidak
efisien dalam penggunaan memory
·
Menyiakan
banyak waktu komputasi
·
Pada
suatu aplikasi, representasi statis tidak dimungkinkan
3)
Bila
penambahan dan pengurangan terjadi terus-menerus, maka representasi statis
(array) :
·
Tidak
efisien dalam penggunaan memory
·
Menyiakan
banyak waktu komputasi
·
Pada
suatu aplikasi, representasi statis tidak dimungkinkan
BAB III
PENUTUP
A.
Kesimpulan
Struktur
adalah sekumpulan elemen-elemen data yang digabung menjadi suatu kesatuan.
Struktur array adalah kumpulan elemen-elemen data yang digabungkan menjadi
suatu kesatuan yang memiliki tipe homogen (sama). Array merupakan bagian dari
struktur data yaitu termasuk ke dalam struktur data sederhana yang dapat
didefinisikan sebagai pemesanan alokasi memori sementara pada komputer.
Apabila
kita membuat progam dengan data yang yang sudah kita ketahui batasnya, maka
kita menggunakan array (tipe data statis), namum apabila datanya belum kita
ketahui batasnya maka gunakan pointer (tipe data dinamis). Elemen-elemen array
tersusun secara sekuensial dalam memori komputer. Array dapat berupa satu
dimensi, dua dimensi, ataupun multidimensi.
B.
Saran
Dengan
tersusunnya makalah ini diharapkan para membaca memberikan saran dan kritik
yang membangun, sebagai motivasi demi terciptanya kemajuan dalam pembuatan
makalah-makalah selanjutnya.
Daftar
Pustaka
http://dyananyun.blogspot.com/2010/02/struktur-data-array.html
http://elqieen.blogspot.com/2010/12/makalah-struktur-data-program-c.html
http://www.nusinau.com/pengenalan-array-dan-string/
http://www.nusinau.com/pengertian-struktur-data-2/
http://kintung05.wordpress.com/2008/11/23/pengertian-struktur-data/
modul Praktikum Konsep Pemrogaman
: Array
terima kasih..good mudah di pahami
ReplyDelete