SlideShare a Scribd company logo
ARRAY STATIS
Array (larik) merupakan tipe data terstruktur yang terdiri dari sejumlah elemen
yang mempunyai tipe data yang sama dan diakses/diacu lewat indeksnya. Array
memiliki jumlah komponen yang jumlahnya tetap.
Banyaknya komponen dalam array ditunjukkan oleh suatu indeks. Array dapat
bertipe data sederhana/dasar ataupun bertipe data terstruktur lainnya seperti record.
Elemen-elemen dari array tersusun secara sekuensial (berurutan/kontigu) dalam
memori komputer. Array dapat berupa satu dimensi, dua dimensi, tiga dimensi ataupun
banyak dimensi.
Deklarasi Array satu dimensi secara Umum:
Kamus :
Const
maks_array : integer = .....
Type
namatype_array = array [1..maks_array] of tipedata
nama_var_array : namatype_array
indeks : integer {indeks array dari 1 sampai maksimum array}
Array 1 dimensi dapat digambarkan seperti di bawah ini :
nama_var_array
...
1 2 3 … maks_array
Contoh:
Kamus :
Const
maks_array : integer = 100
Type
Larik = array [1..maks_array] of integer
A : Larik
i : integer {indeks array dr 1 sampai 100}
Contoh deklarasi array di atas menyatakan bahwa terdapat array dengan nama Larik telah
dideklarasikan dengan tipe integer (bilangan bulat), dengan jumlah maksimum elemen
array 100 elemen, nilai dari elemen array tersebut bertipe integer.
Proses-proses terhadap data array:
1. Penciptaan (Create)Array
Mempersiapkan array untuk diakses/diproses dengan asumsi elemen array diisi
dengan angka 0 jika elemen arraynya numerik/angka/bilangan, tapi jika
alphanumerik, maka diisi dengan tanda ‘ ‘.
Prosedur penciptaan secara umum sebagai berikut :
Procedure create (Output nama_var_array : namatype_array)
{I.S : maksimum array sudah terdefinisi}
{F.S : menghasilkan array yang siap diproses}
Kamus :
Algoritma :
for indeks 1 to maks_array do
nama_var_array(indeks) 0 {Asumsi isi elemen array bilangan}
endfor
EndProcedure
2. Traversal
Proses mengunjungi setiap elemen array secara berurutan dari elemen pertama sampai
elemen terakhir.
Yang termasuk dalam proses traversal adalah :
- Pengisian elemen array dengan data
- Menampilkan elemen array
- Penambahan data di array
- Penyisipan data di indeks tertentu pada array
- Penghapusan data di indeks tertentu pada array
- Menentukan nilai maksimum/minimum
- Menghitung rata-rata nilai
- dll
Prosedur traversal secara umum :
Procedure traversal (I/O nama_var_array : namatype_array)
{I.S : maksimum array sudah terdefinisi}
{F.S : menghasilkan array yang siap diproses}
Kamus :
Algoritma :
Inisialisasi {pemberian nilai awal terhadap suatu variabel}
for indeks 1 to maks_array do
Proses
endfor
Terminasi {penutupan yang harus dilakukan setelah pemrosesan selesai}
EndProcedure
3. Pencarian data (Searching)
Pencarian data berarti proses mencari suatu data yang terdapat dalam suatu array.
Proses ini menghasilkan nilai benar atau salah, jika benar berarti data yang dicari ada
dalam array, jika salah berarti data yang dicari tidak ditemukan.
Metode pencarian data adalah sebagai berikut:
1. Sequential/Linear Search
Pencarian yang dilakukan secara berurutan dari data awal sampai data ditemukan
atau data terakhir.
Pencarian sekuensial dibagi menjadi 2 yaitu :
a. Pencarian sekuensial tanpa Boolean
- Tanpa Sentinel
- Dengan Sentinel
b. Pencarian sekuensial dengan Boolean
2. Binary Search
Pencarian yang dilakukan terhadap data yang sudah terurut baik secara ascending
maupun descending. Pencarian teknik ini mempunyai beban komputasi yang lebih
ringan dibandingkan dengan pencarian sekuensial. Mekanismenya adalah dengan
cara membagi array menjadi 2 bagian yaitu bagian kiri dari indeks terkecil/ Ia
sampai ke indeks tengah dan bagian kanan dari indeks tengah sampai keindeks
terbesar/Ib. Indeks tengah (k) didapat dari :
k = (Ia + Ib) div 2
Jika data yang dicari lebih kecil dari data di indeks tengah, maka pencarian
dilanjutkan kearray bagian kiri, tapi jika data yang dicari lebih besar dari data di
indeks tengah, maka pencarian dilanjutkan kebagian kanan, dan seterusnya sampai
data ditemukan atau sampai Ia>Ib.
Contoh 1 (kasus data yang dicari ada dalam array):
Data yang dicari adalah : 50
Banyak data : 10
Array :
1 4 8 9 10 15 16 25 50 55
Urutan pencariannya adalah :
Kiri = 1
Kanan = 10
Tengah = (1+10)/2 = 5,5 = 5 [ambil bilangan bulatnya]
1 4 8 9 10 15 16 25 50 55
Kemudian bandingkan data yang dicari (50) dengan data posisi tengah (10). Ada 3
kemungkinan yang terjadi, yaitu :
- Jika data posisi tengah > data yang dicari, maka pencarian dilakukan di array
bagian kiri, dengan cara memindahkan kanan ke posisi tengah-1 (kanan=tengah-1)
dan posisi tengah dicari kembali dengan rumus (kiri+kanan)/2.
- Jika data posisi tengah < data yang dicari, maka pencarian dilakukan di array
bagian kanan, dengan cara memindahkan posisi kiri dengan posisi tengah+1, dan
posisi tengah dicari kembali dengan rumus (kiri+kanan)/2.
Kiri Tengah Kanan
- Jika data posisi tengah = data yang dicari, berarti data telah ditemukan pada posisi
tengah.
Dengan kasus di atas (data[tengah]=10 dan dicari=50), maka pencarian yang akan
dilakukan adalah pada array bagian kanan. Oleh karena itu posisi kiri berpindah
dari 0 menjadi 6 (tengah+1).
Kiri = 6
Kanan = 10
Tengah = (6+10)/2 = 8 [ambil bilangan bulatnya]
1 4 8 9 10 15 16 25 50 55
Lakukan kembali proses pembandingan seperti tadi sehingga didapatkan bahwa
nilai yang dicari lebih besar daripada nilai di posisi tengah, maka pencarian
dilakukan lagi pada bagian kanan dengan kondisi :
Kiri=tengah+1=9
Kanan=10
Tengah=(kiri+kanan)/2=(10+9)/2=9.
1 4 8 9 10 15 16 25 50 55
Kemudian lakukan lagi perbandingan, sehingga didapatkan bahwa data yang dicari
(50) sudah sama dengan data posisi tengah, maka itu berarti data telah ditemukan
pada posisi ke 9.
Contoh 2 (kasus data yang dicari tidak ada dalam array) :
Data yang dicari adalah : 5
Banyak data : 5
Array :
1 4 8 9 10 15 16 25 50 55
Urutan pencariannya adalah :
Kiri = 1
Kanan = 10
Tengah = (1+10)/2 = 5,5 = 5 [ambil bilangan bulatnya]
1 4 8 9 10 15 16 25 50 55
Kemudian bandingkan data yang dicari (5) dengan data posisi tengah (10),
sehingga didapatkan bahwa data yang dicari lebih kecil dari data posisi tengah,
sehingga pencarian dilakukan pada array bagian kiri. Kondisi pencariannya :
Kiri=1;
Kanan=Tengah-1 = 5-1 = 4
Tengah=(1+Kanan)/2 = (1+4)/2= 5/2 =2
Kiri Tengah Kanan
Kiri/Tengah Kanan
Kiri Tengah Kanan
1 4 8 9 10 15 16 25 50 55
Kemudian bandingkan lagi data yang dicari (5) dengan data yang di posisi tengah
(4). Didapatkan kondisi bahwa data yang dicari (5) lebih besar dari posisi tengah
(4), maka pencarian kembali dilakukan di posisi kanan, sehingga kondisi pencarian
adalah :
Kiri = Tengah+1 = 2+1 =3
Kanan = 4
Tengah = (Kiri+Kanan)/2 = (3+4)/2 = 7/2 =3
1 4 8 9 10 15 16 25 50 55
Kemudian bandingkan lagi data yang dicari (5) dengan data tengah (8), didapatkan
kondisi bahwa data yang dicari lebih kecil dari data tengah sehingga pencarian
harus dilakukan di posisi kiri sehingga kondisi pencarian adalah :
Kanan = (Tengah-1) = 3-1 =2
Kiri = 3
Tengah = (Kiri+Kanan) =(2+3)/2 = 5/2 =2
1 4 8 9 10 15 16 25 50 55
Karena posisi kiri telah melebihi posisi kanan, maka pencarian selesai dan itu
menunjukan bahwa data tidak ditemukan
4. Pengurutan data (Sorting)
Proses menyusun data yang ada dalam array sehingga dapat terurut baik secara
menaik (ascending) atau menurun (descending).
Adapun algoritma yang bisa digunakan sebagai berikut :
1. Buble Sort
Algoritma pengurutan dengan menggunakan teknik bubble sort adalah dengan
membandingkan sebuah elemen array ke-i dengan elemen array berikutnya
(elemen ke-i+1). Jika isi elemen array ke-i lebih besar dari elemen array ke-i+1,
maka tukarkan isinya. Algoritma ini adalah algoritma pengurutan yang paling
sederhana, tetapi paling lambat untuk array yang memiliki elemen yang banyak.
Contoh Kasus dengan banyak data adalah 10 :
Array: 5 3 7 9 2 3 6 4 3 1
Catatan : untuk kasus di atas sengaja angka terkecil dipakai di akhir data
sehingga ini akan menghasilkan kondisi terburuk dari pengurutan.
Awal: 5 3 7 9 2 3 6 4 3 1
Kiri Tengah Kanan
Kiri/Tengah Kanan
Kanan/Tengah Kiri
Berseberangan
L. 1 3 5 7 2 3 6 4 3 1 9
L. 2 3 5 2 3 6 4 3 1 7 9
L. 3 3 2 3 5 4 3 1 6 7 9
L. 4 2 3 3 4 3 1 5 6 7 9
L. 5 2 3 3 3 1 4 5 6 7 9
L. 6 2 3 3 1 3 4 5 6 7 9
L. 7 2 3 1 3 3 4 5 6 7 9
L. 8 2 1 3 3 3 4 5 6 7 9
L. 9 1 2 3 3 3 4 5 6 7 9
Catatan : data yang diarsir adalah data yang telah terurut.
Dari gambaran di atas, ketika banyak data adalah 10, maka proses pertukaran
dilakukan sebanyak 9 langkah. Jadi dapat diketahui bahwa langkah yang
dilakukan agar data terurut maksimal sebanyak N-1 langkah dimana N adalah
banyaknya data.
Algoritma pengurutan data dengan algoritma bubble sort adalah :
a. Lakukan perulangan untuk i dimulai dari 1 sampai N-1, lakukan proses b.
b. Lakukan perulangan j dimulai dari 1 sampai N-1, lakukan perbandingan antara
data ke-j dengan data ke-(j+1). Jika data ke-j lebih besar dari data ke-(j+1), maka
tukarkan datanya.
2. Selection Sort
Algoritma selection sort bekerja dengan cara menyimpan data terkecil dari data
ke posisi kiri. Data paling kiri yang telah terurut tidak perlu dibandingkan lagi.
Untuk lebih jelas, perhatikan gambaran pengurutan di bawah ini :
Kondisi Awal :
Awal: 5 3 7 9 2 3 6 4 3 1
Langkah 1 :
Cari index bilangan terkecil dari data ke-1 sampai data terakhir terakhir untuk
disimpan di posisi ke-1. Dari data di atas didapatkan bahwa data terkecil
berada di index ke-10. Tukarkan isi data ke-1 dengan indek ke 10.
5 3 7 9 2 3 6 4 3 1
Menjadi
1 3 7 9 2 3 6 4 3 5
Langkah ke-2 :
Cari index bilangan terkecil dari data ke-2 sampai data terakhir untuk
disimpan di posisi-2. Dari data sebelumnya didapatkan bahwa data terkecil
berada di index ke-5. Tukarkan isi data ke-2 dengan data index ke-5.
1 3 7 9 2 3 6 4 3 5
Menjadi
1 2 7 9 3 3 6 4 3 5
Langkah ke-3 :
Cari index bilangan terkecil dari data ke-3 sampai data terakhir untuk
disimpan di posisi-3. Dari data sebelumnya didapatkan bahwa data terkecil
berada di index ke-5. Tukarkan isi data ke-3 dengan data index ke-5.
1 2 7 9 3 3 6 4 3 5
Menjadi
1 2 3 9 7 3 6 4 3 5
Langkah ke-4 : Posisi terkecil = 6
1 2 3 9 7 3 6 4 3 5
Menjadi
1 2 3 3 7 9 6 4 3 5
Langkah ke-5 : Posisi terkecil = 9
1 2 3 3 7 9 6 4 3 5
Menjadi
1 2 3 3 3 9 6 4 7 5
Langkah ke-6 : Posisi terkecil = 8
1 2 3 3 3 9 6 4 7 5
Menjadi
1 2 3 3 3 4 6 9 7 5
Langkah ke-7 : Posisi terkecil = 10
1 2 3 3 3 4 6 9 7 5
Menjadi
1 2 3 3 3 4 5 9 7 6
Langkah ke-8 : Posisi Terkecil = 10
1 2 3 3 3 4 5 9 7 6
Menjadi
1 2 3 3 3 4 5 6 7 9
Langkah ke-9 : Posisi Terkecil = 9, Tidak ada pertukaran data
1 2 3 3 3 4 5 6 7 9
Menjadi
1 2 3 3 3 4 5 6 7 9
Algoritma di atas adalah :
a. lakukan perulangan i untuk mewakili langkah dari 1 sampai N-1,dimana N
adalah banyak data. Lakukan proses b.
b. Lakukan pencarian index terkecil dalam range data ke-i sampai data ke-N, dan
simpan index posisinya dalam variabel idxterkecil. Lanjutkan ke proses c.
Jika data ke-i lebih besar dari data ke-indexterkecil, maka tukarkan data ke-i
dengan data ke-indexterkecil.
3. Insertion Sort
4. Radix Sort
5. Merge Sort
6. Quick Sort
5. Penghancuran
Proses mengembalikan data array ke nilai awal.

More Related Content

What's hot

4 pengolahan data array
4 pengolahan data array4 pengolahan data array
4 pengolahan data array
Simon Patabang
 
Stack with linked list(algodat)
Stack with linked list(algodat)Stack with linked list(algodat)
Stack with linked list(algodat)
Marlintika Marlintika
 
Struktur data chapter_14
Struktur data chapter_14Struktur data chapter_14
Struktur data chapter_14
Sejahtera Affif
 
Pertemuan viii Sorting
Pertemuan viii SortingPertemuan viii Sorting
Pertemuan viii Sorting
Putra Andry
 
Sd pertemuan 5 & 6
Sd   pertemuan 5 & 6Sd   pertemuan 5 & 6
Sd pertemuan 5 & 6
biedoen
 
Algoritma dan Struktur Data - Binary Search
Algoritma dan Struktur Data - Binary SearchAlgoritma dan Struktur Data - Binary Search
Algoritma dan Struktur Data - Binary Search
KuliahKita
 
Materi : Struktur Data (1 Pengantar)
Materi : Struktur Data (1 Pengantar)Materi : Struktur Data (1 Pengantar)
Materi : Struktur Data (1 Pengantar)
eka pandu cynthia
 
7 Metode Pencarian Data Array
7 Metode Pencarian Data Array7 Metode Pencarian Data Array
7 Metode Pencarian Data Array
Simon Patabang
 
Pertemuan 11 Tehnik Searching
Pertemuan 11 Tehnik SearchingPertemuan 11 Tehnik Searching
Pertemuan 11 Tehnik Searching
Endang Retnoningsih
 
Beberapa rumus-dalam-excel
Beberapa rumus-dalam-excelBeberapa rumus-dalam-excel
Beberapa rumus-dalam-excel
Warung Bidan
 
Teknik Searching
Teknik SearchingTeknik Searching
Teknik Searching
Brigita Wensen
 
Tugas kelompok mi d3_sore
Tugas kelompok mi d3_soreTugas kelompok mi d3_sore
Tugas kelompok mi d3_sore
tio_arkarna
 
Belajar mudah microsoft office excel 2007
Belajar mudah microsoft office excel 2007Belajar mudah microsoft office excel 2007
Belajar mudah microsoft office excel 2007rina_nurjanah96
 
Implementasi queue
Implementasi queueImplementasi queue
Implementasi queue
Rhe Dwi Yuni
 
Double linked list
Double linked listDouble linked list
Double linked list
Materi Kuliah Online
 

What's hot (20)

4 pengolahan data array
4 pengolahan data array4 pengolahan data array
4 pengolahan data array
 
Stack with linked list(algodat)
Stack with linked list(algodat)Stack with linked list(algodat)
Stack with linked list(algodat)
 
Struktur data chapter_14
Struktur data chapter_14Struktur data chapter_14
Struktur data chapter_14
 
Pertemuan viii Sorting
Pertemuan viii SortingPertemuan viii Sorting
Pertemuan viii Sorting
 
Sd pertemuan 5 & 6
Sd   pertemuan 5 & 6Sd   pertemuan 5 & 6
Sd pertemuan 5 & 6
 
Algoritma dan Struktur Data - Binary Search
Algoritma dan Struktur Data - Binary SearchAlgoritma dan Struktur Data - Binary Search
Algoritma dan Struktur Data - Binary Search
 
Materi : Struktur Data (1 Pengantar)
Materi : Struktur Data (1 Pengantar)Materi : Struktur Data (1 Pengantar)
Materi : Struktur Data (1 Pengantar)
 
7 Metode Pencarian Data Array
7 Metode Pencarian Data Array7 Metode Pencarian Data Array
7 Metode Pencarian Data Array
 
Pertemuan 11 Tehnik Searching
Pertemuan 11 Tehnik SearchingPertemuan 11 Tehnik Searching
Pertemuan 11 Tehnik Searching
 
Beberapa rumus-dalam-excel
Beberapa rumus-dalam-excelBeberapa rumus-dalam-excel
Beberapa rumus-dalam-excel
 
circular linked list
circular linked listcircular linked list
circular linked list
 
Teknik Searching
Teknik SearchingTeknik Searching
Teknik Searching
 
Array
ArrayArray
Array
 
Tistrukdat10
Tistrukdat10Tistrukdat10
Tistrukdat10
 
Tugas kelompok mi d3_sore
Tugas kelompok mi d3_soreTugas kelompok mi d3_sore
Tugas kelompok mi d3_sore
 
Laporan tugas struktur data
Laporan tugas struktur dataLaporan tugas struktur data
Laporan tugas struktur data
 
Belajar mudah microsoft office excel 2007
Belajar mudah microsoft office excel 2007Belajar mudah microsoft office excel 2007
Belajar mudah microsoft office excel 2007
 
Implementasi queue
Implementasi queueImplementasi queue
Implementasi queue
 
Double linked list
Double linked listDouble linked list
Double linked list
 
Pengenalan beberapa fungsi atau rumus microsoft excel
Pengenalan beberapa fungsi atau rumus microsoft excelPengenalan beberapa fungsi atau rumus microsoft excel
Pengenalan beberapa fungsi atau rumus microsoft excel
 

Viewers also liked

four knowledge for business startup
four knowledge for business startupfour knowledge for business startup
four knowledge for business startupIkhlash Kautsar
 
310 Introduction
310 Introduction310 Introduction
310 Introduction
Gale Pooley
 
Khaled Al-Shair talks about Quality of Life assessment for aspergillosis
Khaled Al-Shair talks about Quality of Life assessment for aspergillosisKhaled Al-Shair talks about Quality of Life assessment for aspergillosis
Khaled Al-Shair talks about Quality of Life assessment for aspergillosis
Graham Atherton
 
Chain of Points Whitepaper
Chain of Points WhitepaperChain of Points Whitepaper
Chain of Points Whitepaper
Stefan Crnojević
 
Presentation artwork for linked in
Presentation artwork for linked inPresentation artwork for linked in
Presentation artwork for linked in
Leanne DaCosta
 
Uso Responsable de Internet - Otros Riesgos- Introduccion
Uso Responsable de Internet - Otros Riesgos- IntroduccionUso Responsable de Internet - Otros Riesgos- Introduccion
Uso Responsable de Internet - Otros Riesgos- Introduccion
iclonet .
 
ídolo 5ad
ídolo 5adídolo 5ad
ídolo 5ad
adbespagnol
 
Curso Uso Responsable de Internet Unidad 2 . Protección en Internet
Curso Uso Responsable de Internet Unidad 2 . Protección en InternetCurso Uso Responsable de Internet Unidad 2 . Protección en Internet
Curso Uso Responsable de Internet Unidad 2 . Protección en Internet
iclonet .
 
Valentine´s day in india
Valentine´s   day  in  indiaValentine´s   day  in  india
Valentine´s day in india
CEIP Luis Cernuda
 
Igbc green eb o&amp;m rating system (pilot version)
Igbc green eb o&amp;m rating system (pilot version)Igbc green eb o&amp;m rating system (pilot version)
Igbc green eb o&amp;m rating system (pilot version)
Shilpa Dewangan
 
Developing a partnership with parents in Early Years Learning settings: a com...
Developing a partnership with parents in Early Years Learning settings: a com...Developing a partnership with parents in Early Years Learning settings: a com...
Developing a partnership with parents in Early Years Learning settings: a com...
Ali Owens Brereton
 
Guiaemociones v2 1
Guiaemociones v2 1Guiaemociones v2 1
Guiaemociones v2 1
Virtu Fernandez
 
«Виховуємо граючи, граючи виховуємо» (презентація)
«Виховуємо граючи, граючи виховуємо» (презентація)«Виховуємо граючи, граючи виховуємо» (презентація)
«Виховуємо граючи, граючи виховуємо» (презентація)
Anhelina Mytsura
 
Struds 2010(aug)
Struds 2010(aug)Struds 2010(aug)
Struds 2010(aug)
SoftTechengr
 
Kung hei fat choi
Kung hei fat choiKung hei fat choi
Kung hei fat choi
May Daquipil
 
Eavesdroppin
EavesdroppinEavesdroppin
Eavesdroppin
Arman Sharma
 
4437
44374437
Daniel goodwin real estate law 150414
Daniel goodwin   real estate law 150414Daniel goodwin   real estate law 150414
Daniel goodwin real estate law 150414
Gale Pooley
 
The hunter that lied
The hunter that liedThe hunter that lied
The hunter that lied
87honey
 

Viewers also liked (20)

four knowledge for business startup
four knowledge for business startupfour knowledge for business startup
four knowledge for business startup
 
310 Introduction
310 Introduction310 Introduction
310 Introduction
 
Qt abril 1
Qt abril 1Qt abril 1
Qt abril 1
 
Khaled Al-Shair talks about Quality of Life assessment for aspergillosis
Khaled Al-Shair talks about Quality of Life assessment for aspergillosisKhaled Al-Shair talks about Quality of Life assessment for aspergillosis
Khaled Al-Shair talks about Quality of Life assessment for aspergillosis
 
Chain of Points Whitepaper
Chain of Points WhitepaperChain of Points Whitepaper
Chain of Points Whitepaper
 
Presentation artwork for linked in
Presentation artwork for linked inPresentation artwork for linked in
Presentation artwork for linked in
 
Uso Responsable de Internet - Otros Riesgos- Introduccion
Uso Responsable de Internet - Otros Riesgos- IntroduccionUso Responsable de Internet - Otros Riesgos- Introduccion
Uso Responsable de Internet - Otros Riesgos- Introduccion
 
ídolo 5ad
ídolo 5adídolo 5ad
ídolo 5ad
 
Curso Uso Responsable de Internet Unidad 2 . Protección en Internet
Curso Uso Responsable de Internet Unidad 2 . Protección en InternetCurso Uso Responsable de Internet Unidad 2 . Protección en Internet
Curso Uso Responsable de Internet Unidad 2 . Protección en Internet
 
Valentine´s day in india
Valentine´s   day  in  indiaValentine´s   day  in  india
Valentine´s day in india
 
Igbc green eb o&amp;m rating system (pilot version)
Igbc green eb o&amp;m rating system (pilot version)Igbc green eb o&amp;m rating system (pilot version)
Igbc green eb o&amp;m rating system (pilot version)
 
Developing a partnership with parents in Early Years Learning settings: a com...
Developing a partnership with parents in Early Years Learning settings: a com...Developing a partnership with parents in Early Years Learning settings: a com...
Developing a partnership with parents in Early Years Learning settings: a com...
 
Guiaemociones v2 1
Guiaemociones v2 1Guiaemociones v2 1
Guiaemociones v2 1
 
«Виховуємо граючи, граючи виховуємо» (презентація)
«Виховуємо граючи, граючи виховуємо» (презентація)«Виховуємо граючи, граючи виховуємо» (презентація)
«Виховуємо граючи, граючи виховуємо» (презентація)
 
Struds 2010(aug)
Struds 2010(aug)Struds 2010(aug)
Struds 2010(aug)
 
Kung hei fat choi
Kung hei fat choiKung hei fat choi
Kung hei fat choi
 
Eavesdroppin
EavesdroppinEavesdroppin
Eavesdroppin
 
4437
44374437
4437
 
Daniel goodwin real estate law 150414
Daniel goodwin   real estate law 150414Daniel goodwin   real estate law 150414
Daniel goodwin real estate law 150414
 
The hunter that lied
The hunter that liedThe hunter that lied
The hunter that lied
 

Similar to Array statis if

Berpikir Komputasional Informatika Fase E SMA Kelas 1.pptx
Berpikir Komputasional Informatika Fase E SMA Kelas 1.pptxBerpikir Komputasional Informatika Fase E SMA Kelas 1.pptx
Berpikir Komputasional Informatika Fase E SMA Kelas 1.pptx
SMA NEGERI 1 PEMATANGSIANTAR, POLITEKNIK BISNIS INDONESIA, VORTEX558
 
Berpikir Komputasional Informatika Fase E SMA Kelas 1.pptx
Berpikir Komputasional Informatika Fase E SMA Kelas 1.pptxBerpikir Komputasional Informatika Fase E SMA Kelas 1.pptx
Berpikir Komputasional Informatika Fase E SMA Kelas 1.pptx
SMA NEGERI 1 PEMATANGSIANTAR, POLITEKNIK BISNIS INDONESIA, VORTEX558
 
Modul pembelajaran Searching Algorithm.pptx
Modul pembelajaran Searching Algorithm.pptxModul pembelajaran Searching Algorithm.pptx
Modul pembelajaran Searching Algorithm.pptx
JalaludinAlAzhamatKh
 
Metode sorting dan aplikasinya2
Metode sorting dan aplikasinya2Metode sorting dan aplikasinya2
Metode sorting dan aplikasinya2
maidah .
 
Algoritma dan Struktur Data - pencarian biner
Algoritma dan Struktur Data - pencarian binerAlgoritma dan Struktur Data - pencarian biner
Algoritma dan Struktur Data - pencarian biner
Georgius Rinaldo
 
TUGAS TIK.pptx
TUGAS TIK.pptxTUGAS TIK.pptx
TUGAS TIK.pptx
DzixdzixDzikri
 
Analisis Algoritma Pada Masalah Sorting
Analisis Algoritma Pada Masalah SortingAnalisis Algoritma Pada Masalah Sorting
Analisis Algoritma Pada Masalah SortingDea Rokhmatun Iradewa
 
7. Algoritma.pptx
7. Algoritma.pptx7. Algoritma.pptx
7. Algoritma.pptx
DickyPrayitno1
 
Rifal Zulma Hendri (2220201009).ppt
Rifal Zulma Hendri (2220201009).pptRifal Zulma Hendri (2220201009).ppt
Rifal Zulma Hendri (2220201009).ppt
FaldoPku
 
Paper Metode Sorting
Paper Metode SortingPaper Metode Sorting
Paper Metode Sorting
Nurul Habibah
 
Algoritma Sorting
Algoritma SortingAlgoritma Sorting
Algoritma Sorting
Lubna Abidah
 
Sd pertemuan 5 & 6
Sd   pertemuan 5 & 6Sd   pertemuan 5 & 6
Sd pertemuan 5 & 6
muissyahril
 
Ni luh dewi pradnyawati
Ni luh dewi pradnyawatiNi luh dewi pradnyawati
Ni luh dewi pradnyawati
Ni Luh Dewi Pradnyawati
 
Informatika (BK).pptx
Informatika (BK).pptxInformatika (BK).pptx
Informatika (BK).pptx
AcimMulyana2
 
kiki andriani , 5 metode sorting
kiki andriani , 5 metode sortingkiki andriani , 5 metode sorting
kiki andriani , 5 metode sorting
kiki andriani
 
207 p11
207 p11207 p11
207 p11
itranus
 
ratna mustika sari
ratna mustika sariratna mustika sari
ratna mustika sari
ratna mustika sari
 
Pengurutan (Sorting)
Pengurutan (Sorting)Pengurutan (Sorting)
Pengurutan (Sorting)
Materi Kuliah Online
 
Tugas Algoritma Mutia rahmadania
Tugas Algoritma Mutia rahmadania Tugas Algoritma Mutia rahmadania
Tugas Algoritma Mutia rahmadania
Mutia Rahmadania
 

Similar to Array statis if (20)

Berpikir Komputasional Informatika Fase E SMA Kelas 1.pptx
Berpikir Komputasional Informatika Fase E SMA Kelas 1.pptxBerpikir Komputasional Informatika Fase E SMA Kelas 1.pptx
Berpikir Komputasional Informatika Fase E SMA Kelas 1.pptx
 
Berpikir Komputasional Informatika Fase E SMA Kelas 1.pptx
Berpikir Komputasional Informatika Fase E SMA Kelas 1.pptxBerpikir Komputasional Informatika Fase E SMA Kelas 1.pptx
Berpikir Komputasional Informatika Fase E SMA Kelas 1.pptx
 
Modul pembelajaran Searching Algorithm.pptx
Modul pembelajaran Searching Algorithm.pptxModul pembelajaran Searching Algorithm.pptx
Modul pembelajaran Searching Algorithm.pptx
 
Metode sorting dan aplikasinya2
Metode sorting dan aplikasinya2Metode sorting dan aplikasinya2
Metode sorting dan aplikasinya2
 
Algoritma dan Struktur Data - pencarian biner
Algoritma dan Struktur Data - pencarian binerAlgoritma dan Struktur Data - pencarian biner
Algoritma dan Struktur Data - pencarian biner
 
TUGAS TIK.pptx
TUGAS TIK.pptxTUGAS TIK.pptx
TUGAS TIK.pptx
 
Analisis Algoritma Pada Masalah Sorting
Analisis Algoritma Pada Masalah SortingAnalisis Algoritma Pada Masalah Sorting
Analisis Algoritma Pada Masalah Sorting
 
7. Algoritma.pptx
7. Algoritma.pptx7. Algoritma.pptx
7. Algoritma.pptx
 
Rifal Zulma Hendri (2220201009).ppt
Rifal Zulma Hendri (2220201009).pptRifal Zulma Hendri (2220201009).ppt
Rifal Zulma Hendri (2220201009).ppt
 
Paper Metode Sorting
Paper Metode SortingPaper Metode Sorting
Paper Metode Sorting
 
Algoritma Sorting
Algoritma SortingAlgoritma Sorting
Algoritma Sorting
 
Sd pertemuan 5 & 6
Sd   pertemuan 5 & 6Sd   pertemuan 5 & 6
Sd pertemuan 5 & 6
 
Ni luh dewi pradnyawati
Ni luh dewi pradnyawatiNi luh dewi pradnyawati
Ni luh dewi pradnyawati
 
Ni luh dewi pradnyawati
Ni luh dewi pradnyawatiNi luh dewi pradnyawati
Ni luh dewi pradnyawati
 
Informatika (BK).pptx
Informatika (BK).pptxInformatika (BK).pptx
Informatika (BK).pptx
 
kiki andriani , 5 metode sorting
kiki andriani , 5 metode sortingkiki andriani , 5 metode sorting
kiki andriani , 5 metode sorting
 
207 p11
207 p11207 p11
207 p11
 
ratna mustika sari
ratna mustika sariratna mustika sari
ratna mustika sari
 
Pengurutan (Sorting)
Pengurutan (Sorting)Pengurutan (Sorting)
Pengurutan (Sorting)
 
Tugas Algoritma Mutia rahmadania
Tugas Algoritma Mutia rahmadania Tugas Algoritma Mutia rahmadania
Tugas Algoritma Mutia rahmadania
 

Recently uploaded

Modul Ajar Matematika Kelas 11 Fase F Kurikulum Merdeka
Modul Ajar Matematika Kelas 11 Fase F Kurikulum MerdekaModul Ajar Matematika Kelas 11 Fase F Kurikulum Merdeka
Modul Ajar Matematika Kelas 11 Fase F Kurikulum Merdeka
Fathan Emran
 
Workshop "CSR & Community Development (ISO 26000)"_di BALI, 26-28 Juni 2024
Workshop "CSR & Community Development (ISO 26000)"_di BALI, 26-28  Juni 2024Workshop "CSR & Community Development (ISO 26000)"_di BALI, 26-28  Juni 2024
Workshop "CSR & Community Development (ISO 26000)"_di BALI, 26-28 Juni 2024
Kanaidi ken
 
AKSI NYATA TRANSISI PAUD-SD : PENGUATAN DI TAHUN AJARAN BARU
AKSI NYATA TRANSISI PAUD-SD : PENGUATAN DI TAHUN AJARAN BARUAKSI NYATA TRANSISI PAUD-SD : PENGUATAN DI TAHUN AJARAN BARU
AKSI NYATA TRANSISI PAUD-SD : PENGUATAN DI TAHUN AJARAN BARU
junaedikuluri1
 
Modul Ajar Statistika Data Fase F kelas
Modul Ajar Statistika Data Fase F  kelasModul Ajar Statistika Data Fase F  kelas
Modul Ajar Statistika Data Fase F kelas
ananda238570
 
Modul Ajar PAI dan Budi Pekerti Kelas 8 Fase D Kurikulum Merdeka
Modul Ajar PAI dan Budi Pekerti Kelas 8 Fase D Kurikulum MerdekaModul Ajar PAI dan Budi Pekerti Kelas 8 Fase D Kurikulum Merdeka
Modul Ajar PAI dan Budi Pekerti Kelas 8 Fase D Kurikulum Merdeka
Fathan Emran
 
SOAL ASAS SENI MUSIK kelas 2 semester 2 kurikulum merdeka
SOAL ASAS SENI MUSIK kelas 2 semester 2 kurikulum merdekaSOAL ASAS SENI MUSIK kelas 2 semester 2 kurikulum merdeka
SOAL ASAS SENI MUSIK kelas 2 semester 2 kurikulum merdeka
NiaTazmia2
 
Modul Ajar Bahasa Inggris Kelas 10 Fase E Kurikulum Merdeka
Modul Ajar Bahasa Inggris Kelas 10 Fase E Kurikulum MerdekaModul Ajar Bahasa Inggris Kelas 10 Fase E Kurikulum Merdeka
Modul Ajar Bahasa Inggris Kelas 10 Fase E Kurikulum Merdeka
Fathan Emran
 
Modul Ajar Matematika Kelas 8 Fase D Kurikulum Merdeka - [abdiera.com]
Modul Ajar Matematika Kelas 8 Fase D Kurikulum Merdeka - [abdiera.com]Modul Ajar Matematika Kelas 8 Fase D Kurikulum Merdeka - [abdiera.com]
Modul Ajar Matematika Kelas 8 Fase D Kurikulum Merdeka - [abdiera.com]
Fathan Emran
 
Panduan Penggunaan Rekomendasi Buku Sastra.pdf
Panduan Penggunaan Rekomendasi Buku Sastra.pdfPanduan Penggunaan Rekomendasi Buku Sastra.pdf
Panduan Penggunaan Rekomendasi Buku Sastra.pdf
MildayantiMildayanti
 
RENCANA TINDAK LANJUT (RTL) PASCA PELATIHAN.pptx
RENCANA TINDAK LANJUT (RTL) PASCA PELATIHAN.pptxRENCANA TINDAK LANJUT (RTL) PASCA PELATIHAN.pptx
RENCANA TINDAK LANJUT (RTL) PASCA PELATIHAN.pptx
mukminbdk
 
PPT PENGELOLAAN KINERJA PADA PMM SEKOLAH.pptx
PPT PENGELOLAAN KINERJA PADA PMM SEKOLAH.pptxPPT PENGELOLAAN KINERJA PADA PMM SEKOLAH.pptx
PPT PENGELOLAAN KINERJA PADA PMM SEKOLAH.pptx
AqlanHaritsAlfarisi
 
MODUL AJAR MAT LANJUT KELAS XI FASE F.pdf
MODUL AJAR MAT LANJUT KELAS XI FASE F.pdfMODUL AJAR MAT LANJUT KELAS XI FASE F.pdf
MODUL AJAR MAT LANJUT KELAS XI FASE F.pdf
sitispd78
 
KONSEP TEORI TERAPI KOMPLEMENTER - KELAS B KELOMPOK 10.pdf
KONSEP TEORI TERAPI KOMPLEMENTER - KELAS B KELOMPOK 10.pdfKONSEP TEORI TERAPI KOMPLEMENTER - KELAS B KELOMPOK 10.pdf
KONSEP TEORI TERAPI KOMPLEMENTER - KELAS B KELOMPOK 10.pdf
AsyeraPerangin1
 
Ppt landasan pendidikan Pai 9 _20240604_231000_0000.pdf
Ppt landasan pendidikan Pai 9 _20240604_231000_0000.pdfPpt landasan pendidikan Pai 9 _20240604_231000_0000.pdf
Ppt landasan pendidikan Pai 9 _20240604_231000_0000.pdf
fadlurrahman260903
 
SAINS TINGKATAN 4 BAB 11 DAYA DAN GERAKAN
SAINS TINGKATAN 4 BAB 11 DAYA DAN GERAKANSAINS TINGKATAN 4 BAB 11 DAYA DAN GERAKAN
SAINS TINGKATAN 4 BAB 11 DAYA DAN GERAKAN
NURULNAHARIAHBINTIAH
 
Modul Ajar Bahasa Indonesia Kelas 7 Fase D Kurikulum Merdeka - [abdiera.com]
Modul Ajar Bahasa Indonesia Kelas 7 Fase D Kurikulum Merdeka - [abdiera.com]Modul Ajar Bahasa Indonesia Kelas 7 Fase D Kurikulum Merdeka - [abdiera.com]
Modul Ajar Bahasa Indonesia Kelas 7 Fase D Kurikulum Merdeka - [abdiera.com]
Fathan Emran
 
Aksi Nyata Erliana Mudah bukan memahamii
Aksi Nyata Erliana Mudah bukan memahamiiAksi Nyata Erliana Mudah bukan memahamii
Aksi Nyata Erliana Mudah bukan memahamii
esmaducoklat
 
Materi Feedback (umpan balik) kelas Psikologi Komunikasi
Materi Feedback (umpan balik) kelas Psikologi KomunikasiMateri Feedback (umpan balik) kelas Psikologi Komunikasi
Materi Feedback (umpan balik) kelas Psikologi Komunikasi
AdePutraTunggali
 
ANALISIS PENCEMARAN UDARA AKIBAT PABRIK ASPAL
ANALISIS PENCEMARAN UDARA AKIBAT PABRIK ASPALANALISIS PENCEMARAN UDARA AKIBAT PABRIK ASPAL
ANALISIS PENCEMARAN UDARA AKIBAT PABRIK ASPAL
Annisa Syahfitri
 
RPH BAHASA MELAYU TAHUN 6 SJKC 2024.pptx
RPH BAHASA MELAYU TAHUN 6 SJKC 2024.pptxRPH BAHASA MELAYU TAHUN 6 SJKC 2024.pptx
RPH BAHASA MELAYU TAHUN 6 SJKC 2024.pptx
YongYongYong1
 

Recently uploaded (20)

Modul Ajar Matematika Kelas 11 Fase F Kurikulum Merdeka
Modul Ajar Matematika Kelas 11 Fase F Kurikulum MerdekaModul Ajar Matematika Kelas 11 Fase F Kurikulum Merdeka
Modul Ajar Matematika Kelas 11 Fase F Kurikulum Merdeka
 
Workshop "CSR & Community Development (ISO 26000)"_di BALI, 26-28 Juni 2024
Workshop "CSR & Community Development (ISO 26000)"_di BALI, 26-28  Juni 2024Workshop "CSR & Community Development (ISO 26000)"_di BALI, 26-28  Juni 2024
Workshop "CSR & Community Development (ISO 26000)"_di BALI, 26-28 Juni 2024
 
AKSI NYATA TRANSISI PAUD-SD : PENGUATAN DI TAHUN AJARAN BARU
AKSI NYATA TRANSISI PAUD-SD : PENGUATAN DI TAHUN AJARAN BARUAKSI NYATA TRANSISI PAUD-SD : PENGUATAN DI TAHUN AJARAN BARU
AKSI NYATA TRANSISI PAUD-SD : PENGUATAN DI TAHUN AJARAN BARU
 
Modul Ajar Statistika Data Fase F kelas
Modul Ajar Statistika Data Fase F  kelasModul Ajar Statistika Data Fase F  kelas
Modul Ajar Statistika Data Fase F kelas
 
Modul Ajar PAI dan Budi Pekerti Kelas 8 Fase D Kurikulum Merdeka
Modul Ajar PAI dan Budi Pekerti Kelas 8 Fase D Kurikulum MerdekaModul Ajar PAI dan Budi Pekerti Kelas 8 Fase D Kurikulum Merdeka
Modul Ajar PAI dan Budi Pekerti Kelas 8 Fase D Kurikulum Merdeka
 
SOAL ASAS SENI MUSIK kelas 2 semester 2 kurikulum merdeka
SOAL ASAS SENI MUSIK kelas 2 semester 2 kurikulum merdekaSOAL ASAS SENI MUSIK kelas 2 semester 2 kurikulum merdeka
SOAL ASAS SENI MUSIK kelas 2 semester 2 kurikulum merdeka
 
Modul Ajar Bahasa Inggris Kelas 10 Fase E Kurikulum Merdeka
Modul Ajar Bahasa Inggris Kelas 10 Fase E Kurikulum MerdekaModul Ajar Bahasa Inggris Kelas 10 Fase E Kurikulum Merdeka
Modul Ajar Bahasa Inggris Kelas 10 Fase E Kurikulum Merdeka
 
Modul Ajar Matematika Kelas 8 Fase D Kurikulum Merdeka - [abdiera.com]
Modul Ajar Matematika Kelas 8 Fase D Kurikulum Merdeka - [abdiera.com]Modul Ajar Matematika Kelas 8 Fase D Kurikulum Merdeka - [abdiera.com]
Modul Ajar Matematika Kelas 8 Fase D Kurikulum Merdeka - [abdiera.com]
 
Panduan Penggunaan Rekomendasi Buku Sastra.pdf
Panduan Penggunaan Rekomendasi Buku Sastra.pdfPanduan Penggunaan Rekomendasi Buku Sastra.pdf
Panduan Penggunaan Rekomendasi Buku Sastra.pdf
 
RENCANA TINDAK LANJUT (RTL) PASCA PELATIHAN.pptx
RENCANA TINDAK LANJUT (RTL) PASCA PELATIHAN.pptxRENCANA TINDAK LANJUT (RTL) PASCA PELATIHAN.pptx
RENCANA TINDAK LANJUT (RTL) PASCA PELATIHAN.pptx
 
PPT PENGELOLAAN KINERJA PADA PMM SEKOLAH.pptx
PPT PENGELOLAAN KINERJA PADA PMM SEKOLAH.pptxPPT PENGELOLAAN KINERJA PADA PMM SEKOLAH.pptx
PPT PENGELOLAAN KINERJA PADA PMM SEKOLAH.pptx
 
MODUL AJAR MAT LANJUT KELAS XI FASE F.pdf
MODUL AJAR MAT LANJUT KELAS XI FASE F.pdfMODUL AJAR MAT LANJUT KELAS XI FASE F.pdf
MODUL AJAR MAT LANJUT KELAS XI FASE F.pdf
 
KONSEP TEORI TERAPI KOMPLEMENTER - KELAS B KELOMPOK 10.pdf
KONSEP TEORI TERAPI KOMPLEMENTER - KELAS B KELOMPOK 10.pdfKONSEP TEORI TERAPI KOMPLEMENTER - KELAS B KELOMPOK 10.pdf
KONSEP TEORI TERAPI KOMPLEMENTER - KELAS B KELOMPOK 10.pdf
 
Ppt landasan pendidikan Pai 9 _20240604_231000_0000.pdf
Ppt landasan pendidikan Pai 9 _20240604_231000_0000.pdfPpt landasan pendidikan Pai 9 _20240604_231000_0000.pdf
Ppt landasan pendidikan Pai 9 _20240604_231000_0000.pdf
 
SAINS TINGKATAN 4 BAB 11 DAYA DAN GERAKAN
SAINS TINGKATAN 4 BAB 11 DAYA DAN GERAKANSAINS TINGKATAN 4 BAB 11 DAYA DAN GERAKAN
SAINS TINGKATAN 4 BAB 11 DAYA DAN GERAKAN
 
Modul Ajar Bahasa Indonesia Kelas 7 Fase D Kurikulum Merdeka - [abdiera.com]
Modul Ajar Bahasa Indonesia Kelas 7 Fase D Kurikulum Merdeka - [abdiera.com]Modul Ajar Bahasa Indonesia Kelas 7 Fase D Kurikulum Merdeka - [abdiera.com]
Modul Ajar Bahasa Indonesia Kelas 7 Fase D Kurikulum Merdeka - [abdiera.com]
 
Aksi Nyata Erliana Mudah bukan memahamii
Aksi Nyata Erliana Mudah bukan memahamiiAksi Nyata Erliana Mudah bukan memahamii
Aksi Nyata Erliana Mudah bukan memahamii
 
Materi Feedback (umpan balik) kelas Psikologi Komunikasi
Materi Feedback (umpan balik) kelas Psikologi KomunikasiMateri Feedback (umpan balik) kelas Psikologi Komunikasi
Materi Feedback (umpan balik) kelas Psikologi Komunikasi
 
ANALISIS PENCEMARAN UDARA AKIBAT PABRIK ASPAL
ANALISIS PENCEMARAN UDARA AKIBAT PABRIK ASPALANALISIS PENCEMARAN UDARA AKIBAT PABRIK ASPAL
ANALISIS PENCEMARAN UDARA AKIBAT PABRIK ASPAL
 
RPH BAHASA MELAYU TAHUN 6 SJKC 2024.pptx
RPH BAHASA MELAYU TAHUN 6 SJKC 2024.pptxRPH BAHASA MELAYU TAHUN 6 SJKC 2024.pptx
RPH BAHASA MELAYU TAHUN 6 SJKC 2024.pptx
 

Array statis if

  • 1. ARRAY STATIS Array (larik) merupakan tipe data terstruktur yang terdiri dari sejumlah elemen yang mempunyai tipe data yang sama dan diakses/diacu lewat indeksnya. Array memiliki jumlah komponen yang jumlahnya tetap. Banyaknya komponen dalam array ditunjukkan oleh suatu indeks. Array dapat bertipe data sederhana/dasar ataupun bertipe data terstruktur lainnya seperti record. Elemen-elemen dari array tersusun secara sekuensial (berurutan/kontigu) dalam memori komputer. Array dapat berupa satu dimensi, dua dimensi, tiga dimensi ataupun banyak dimensi. Deklarasi Array satu dimensi secara Umum: Kamus : Const maks_array : integer = ..... Type namatype_array = array [1..maks_array] of tipedata nama_var_array : namatype_array indeks : integer {indeks array dari 1 sampai maksimum array} Array 1 dimensi dapat digambarkan seperti di bawah ini : nama_var_array ... 1 2 3 … maks_array Contoh: Kamus : Const maks_array : integer = 100 Type Larik = array [1..maks_array] of integer A : Larik i : integer {indeks array dr 1 sampai 100} Contoh deklarasi array di atas menyatakan bahwa terdapat array dengan nama Larik telah dideklarasikan dengan tipe integer (bilangan bulat), dengan jumlah maksimum elemen array 100 elemen, nilai dari elemen array tersebut bertipe integer.
  • 2. Proses-proses terhadap data array: 1. Penciptaan (Create)Array Mempersiapkan array untuk diakses/diproses dengan asumsi elemen array diisi dengan angka 0 jika elemen arraynya numerik/angka/bilangan, tapi jika alphanumerik, maka diisi dengan tanda ‘ ‘. Prosedur penciptaan secara umum sebagai berikut : Procedure create (Output nama_var_array : namatype_array) {I.S : maksimum array sudah terdefinisi} {F.S : menghasilkan array yang siap diproses} Kamus : Algoritma : for indeks 1 to maks_array do nama_var_array(indeks) 0 {Asumsi isi elemen array bilangan} endfor EndProcedure 2. Traversal Proses mengunjungi setiap elemen array secara berurutan dari elemen pertama sampai elemen terakhir. Yang termasuk dalam proses traversal adalah : - Pengisian elemen array dengan data - Menampilkan elemen array - Penambahan data di array - Penyisipan data di indeks tertentu pada array - Penghapusan data di indeks tertentu pada array - Menentukan nilai maksimum/minimum - Menghitung rata-rata nilai - dll Prosedur traversal secara umum : Procedure traversal (I/O nama_var_array : namatype_array) {I.S : maksimum array sudah terdefinisi} {F.S : menghasilkan array yang siap diproses} Kamus : Algoritma : Inisialisasi {pemberian nilai awal terhadap suatu variabel} for indeks 1 to maks_array do Proses endfor Terminasi {penutupan yang harus dilakukan setelah pemrosesan selesai} EndProcedure
  • 3. 3. Pencarian data (Searching) Pencarian data berarti proses mencari suatu data yang terdapat dalam suatu array. Proses ini menghasilkan nilai benar atau salah, jika benar berarti data yang dicari ada dalam array, jika salah berarti data yang dicari tidak ditemukan. Metode pencarian data adalah sebagai berikut: 1. Sequential/Linear Search Pencarian yang dilakukan secara berurutan dari data awal sampai data ditemukan atau data terakhir. Pencarian sekuensial dibagi menjadi 2 yaitu : a. Pencarian sekuensial tanpa Boolean - Tanpa Sentinel - Dengan Sentinel b. Pencarian sekuensial dengan Boolean 2. Binary Search Pencarian yang dilakukan terhadap data yang sudah terurut baik secara ascending maupun descending. Pencarian teknik ini mempunyai beban komputasi yang lebih ringan dibandingkan dengan pencarian sekuensial. Mekanismenya adalah dengan cara membagi array menjadi 2 bagian yaitu bagian kiri dari indeks terkecil/ Ia sampai ke indeks tengah dan bagian kanan dari indeks tengah sampai keindeks terbesar/Ib. Indeks tengah (k) didapat dari : k = (Ia + Ib) div 2 Jika data yang dicari lebih kecil dari data di indeks tengah, maka pencarian dilanjutkan kearray bagian kiri, tapi jika data yang dicari lebih besar dari data di indeks tengah, maka pencarian dilanjutkan kebagian kanan, dan seterusnya sampai data ditemukan atau sampai Ia>Ib. Contoh 1 (kasus data yang dicari ada dalam array): Data yang dicari adalah : 50 Banyak data : 10 Array : 1 4 8 9 10 15 16 25 50 55 Urutan pencariannya adalah : Kiri = 1 Kanan = 10 Tengah = (1+10)/2 = 5,5 = 5 [ambil bilangan bulatnya] 1 4 8 9 10 15 16 25 50 55 Kemudian bandingkan data yang dicari (50) dengan data posisi tengah (10). Ada 3 kemungkinan yang terjadi, yaitu : - Jika data posisi tengah > data yang dicari, maka pencarian dilakukan di array bagian kiri, dengan cara memindahkan kanan ke posisi tengah-1 (kanan=tengah-1) dan posisi tengah dicari kembali dengan rumus (kiri+kanan)/2. - Jika data posisi tengah < data yang dicari, maka pencarian dilakukan di array bagian kanan, dengan cara memindahkan posisi kiri dengan posisi tengah+1, dan posisi tengah dicari kembali dengan rumus (kiri+kanan)/2. Kiri Tengah Kanan
  • 4. - Jika data posisi tengah = data yang dicari, berarti data telah ditemukan pada posisi tengah. Dengan kasus di atas (data[tengah]=10 dan dicari=50), maka pencarian yang akan dilakukan adalah pada array bagian kanan. Oleh karena itu posisi kiri berpindah dari 0 menjadi 6 (tengah+1). Kiri = 6 Kanan = 10 Tengah = (6+10)/2 = 8 [ambil bilangan bulatnya] 1 4 8 9 10 15 16 25 50 55 Lakukan kembali proses pembandingan seperti tadi sehingga didapatkan bahwa nilai yang dicari lebih besar daripada nilai di posisi tengah, maka pencarian dilakukan lagi pada bagian kanan dengan kondisi : Kiri=tengah+1=9 Kanan=10 Tengah=(kiri+kanan)/2=(10+9)/2=9. 1 4 8 9 10 15 16 25 50 55 Kemudian lakukan lagi perbandingan, sehingga didapatkan bahwa data yang dicari (50) sudah sama dengan data posisi tengah, maka itu berarti data telah ditemukan pada posisi ke 9. Contoh 2 (kasus data yang dicari tidak ada dalam array) : Data yang dicari adalah : 5 Banyak data : 5 Array : 1 4 8 9 10 15 16 25 50 55 Urutan pencariannya adalah : Kiri = 1 Kanan = 10 Tengah = (1+10)/2 = 5,5 = 5 [ambil bilangan bulatnya] 1 4 8 9 10 15 16 25 50 55 Kemudian bandingkan data yang dicari (5) dengan data posisi tengah (10), sehingga didapatkan bahwa data yang dicari lebih kecil dari data posisi tengah, sehingga pencarian dilakukan pada array bagian kiri. Kondisi pencariannya : Kiri=1; Kanan=Tengah-1 = 5-1 = 4 Tengah=(1+Kanan)/2 = (1+4)/2= 5/2 =2 Kiri Tengah Kanan Kiri/Tengah Kanan Kiri Tengah Kanan
  • 5. 1 4 8 9 10 15 16 25 50 55 Kemudian bandingkan lagi data yang dicari (5) dengan data yang di posisi tengah (4). Didapatkan kondisi bahwa data yang dicari (5) lebih besar dari posisi tengah (4), maka pencarian kembali dilakukan di posisi kanan, sehingga kondisi pencarian adalah : Kiri = Tengah+1 = 2+1 =3 Kanan = 4 Tengah = (Kiri+Kanan)/2 = (3+4)/2 = 7/2 =3 1 4 8 9 10 15 16 25 50 55 Kemudian bandingkan lagi data yang dicari (5) dengan data tengah (8), didapatkan kondisi bahwa data yang dicari lebih kecil dari data tengah sehingga pencarian harus dilakukan di posisi kiri sehingga kondisi pencarian adalah : Kanan = (Tengah-1) = 3-1 =2 Kiri = 3 Tengah = (Kiri+Kanan) =(2+3)/2 = 5/2 =2 1 4 8 9 10 15 16 25 50 55 Karena posisi kiri telah melebihi posisi kanan, maka pencarian selesai dan itu menunjukan bahwa data tidak ditemukan 4. Pengurutan data (Sorting) Proses menyusun data yang ada dalam array sehingga dapat terurut baik secara menaik (ascending) atau menurun (descending). Adapun algoritma yang bisa digunakan sebagai berikut : 1. Buble Sort Algoritma pengurutan dengan menggunakan teknik bubble sort adalah dengan membandingkan sebuah elemen array ke-i dengan elemen array berikutnya (elemen ke-i+1). Jika isi elemen array ke-i lebih besar dari elemen array ke-i+1, maka tukarkan isinya. Algoritma ini adalah algoritma pengurutan yang paling sederhana, tetapi paling lambat untuk array yang memiliki elemen yang banyak. Contoh Kasus dengan banyak data adalah 10 : Array: 5 3 7 9 2 3 6 4 3 1 Catatan : untuk kasus di atas sengaja angka terkecil dipakai di akhir data sehingga ini akan menghasilkan kondisi terburuk dari pengurutan. Awal: 5 3 7 9 2 3 6 4 3 1 Kiri Tengah Kanan Kiri/Tengah Kanan Kanan/Tengah Kiri Berseberangan
  • 6. L. 1 3 5 7 2 3 6 4 3 1 9 L. 2 3 5 2 3 6 4 3 1 7 9 L. 3 3 2 3 5 4 3 1 6 7 9 L. 4 2 3 3 4 3 1 5 6 7 9 L. 5 2 3 3 3 1 4 5 6 7 9 L. 6 2 3 3 1 3 4 5 6 7 9 L. 7 2 3 1 3 3 4 5 6 7 9 L. 8 2 1 3 3 3 4 5 6 7 9 L. 9 1 2 3 3 3 4 5 6 7 9 Catatan : data yang diarsir adalah data yang telah terurut. Dari gambaran di atas, ketika banyak data adalah 10, maka proses pertukaran dilakukan sebanyak 9 langkah. Jadi dapat diketahui bahwa langkah yang dilakukan agar data terurut maksimal sebanyak N-1 langkah dimana N adalah banyaknya data. Algoritma pengurutan data dengan algoritma bubble sort adalah : a. Lakukan perulangan untuk i dimulai dari 1 sampai N-1, lakukan proses b. b. Lakukan perulangan j dimulai dari 1 sampai N-1, lakukan perbandingan antara data ke-j dengan data ke-(j+1). Jika data ke-j lebih besar dari data ke-(j+1), maka tukarkan datanya. 2. Selection Sort Algoritma selection sort bekerja dengan cara menyimpan data terkecil dari data ke posisi kiri. Data paling kiri yang telah terurut tidak perlu dibandingkan lagi. Untuk lebih jelas, perhatikan gambaran pengurutan di bawah ini : Kondisi Awal : Awal: 5 3 7 9 2 3 6 4 3 1 Langkah 1 : Cari index bilangan terkecil dari data ke-1 sampai data terakhir terakhir untuk disimpan di posisi ke-1. Dari data di atas didapatkan bahwa data terkecil berada di index ke-10. Tukarkan isi data ke-1 dengan indek ke 10. 5 3 7 9 2 3 6 4 3 1 Menjadi 1 3 7 9 2 3 6 4 3 5 Langkah ke-2 : Cari index bilangan terkecil dari data ke-2 sampai data terakhir untuk disimpan di posisi-2. Dari data sebelumnya didapatkan bahwa data terkecil berada di index ke-5. Tukarkan isi data ke-2 dengan data index ke-5. 1 3 7 9 2 3 6 4 3 5 Menjadi 1 2 7 9 3 3 6 4 3 5 Langkah ke-3 : Cari index bilangan terkecil dari data ke-3 sampai data terakhir untuk disimpan di posisi-3. Dari data sebelumnya didapatkan bahwa data terkecil berada di index ke-5. Tukarkan isi data ke-3 dengan data index ke-5. 1 2 7 9 3 3 6 4 3 5 Menjadi
  • 7. 1 2 3 9 7 3 6 4 3 5 Langkah ke-4 : Posisi terkecil = 6 1 2 3 9 7 3 6 4 3 5 Menjadi 1 2 3 3 7 9 6 4 3 5 Langkah ke-5 : Posisi terkecil = 9 1 2 3 3 7 9 6 4 3 5 Menjadi 1 2 3 3 3 9 6 4 7 5 Langkah ke-6 : Posisi terkecil = 8 1 2 3 3 3 9 6 4 7 5 Menjadi 1 2 3 3 3 4 6 9 7 5 Langkah ke-7 : Posisi terkecil = 10 1 2 3 3 3 4 6 9 7 5 Menjadi 1 2 3 3 3 4 5 9 7 6 Langkah ke-8 : Posisi Terkecil = 10 1 2 3 3 3 4 5 9 7 6 Menjadi 1 2 3 3 3 4 5 6 7 9 Langkah ke-9 : Posisi Terkecil = 9, Tidak ada pertukaran data 1 2 3 3 3 4 5 6 7 9 Menjadi 1 2 3 3 3 4 5 6 7 9 Algoritma di atas adalah : a. lakukan perulangan i untuk mewakili langkah dari 1 sampai N-1,dimana N adalah banyak data. Lakukan proses b. b. Lakukan pencarian index terkecil dalam range data ke-i sampai data ke-N, dan simpan index posisinya dalam variabel idxterkecil. Lanjutkan ke proses c. Jika data ke-i lebih besar dari data ke-indexterkecil, maka tukarkan data ke-i dengan data ke-indexterkecil. 3. Insertion Sort 4. Radix Sort 5. Merge Sort 6. Quick Sort 5. Penghancuran Proses mengembalikan data array ke nilai awal.