(BAGIAN II)
DISUSUN OLEH: KELOMPOK 10
KATA PENGANTAR
Puji syukur kita panjatkan kehadirat Tuhan Yang Maha Esa, karena dengan rahmat dan
karunia-Nya sehingga kita dapat menyelesaikan tugas makalah tentang “ARRAY DAN
STRING (BAGIAN II)”dengan baik dan lancar.
Dalam penyelesaian makalah ini, penulis mendapatkan bantuan dari beberapa sumber dan
dukungan dari berbagai pihak yang telah membantu proses pembuatan makalah ini sehingga
makalah ini dapat diselesaikan dengan baik. Oleh karena itu, penulis mengucapkan terima
kasih kepada:
1. Bapak selaku Dosen pembimbing mata kuliah Pemrograman Komputer
2. Teman yang ikut serta membantu dalam pengerjaan makalah dan mencari informasi
mengenai “ARRAY DAN STRING)”
3. Beberapa sumber yang dapat membantu memenuhi tugas mata kuliah tersebut
Harapan kami, semoga makalah ini berguna untuk proses kegiatan belajar mengajar,
dan kami sadar dalam pembuatan makalah ini kami merasa masih banyak kekurangan-
kekurangan baik pada penulisan maupun materi. Mengingat kemampuan yang kami miliki,
untuk itu kritik dan saran dari semua pihak sangat kami harapkan demi penyempurnaan
pembuatan laporan ini
Penyusun
DAFTAR ISI
KATA PENGATAR............................................................................................................i
DAFTAR ISI.........................................................................................................................ii
BAB I PENDAHULUAN
1.1 LATAR BELAKANG MASALAH.............................................................................1
1.2 RUMUSAN MASALAH.............................................................................................2
1.3 TUJUAN......................................................................................................................2
BAB II PEMBAHASAN
2.1 PENCARIAN PADA ELEMEN ARRAY.....................................................................3
2.1 PENGURUTAN PADA ELEMEN ARRAY.................................................................3
2.3 ARRAY MULTIDIMENSI.................................................................………………..4
DAFTAR PUSTAKA
BAB I
PENDALUHAN
1.1 Latar Belakang Masalah
Bahasa pemrograman C merupakan salah satu bahasa pemrograman komputer yang bisa
dikatakan mudah untuk dipelajari dan mudah untuk dipahami karena bahasanya merupakan
bahasa tingkat tinggi yang dimengerti oleh manusia. Bahasa C dibuat pada tahun 1972 oleh
Dennis Ritchie.
Bahasa C++ dibuat oleh Bjarne Stroustrup di AT dan T Bell Laboratorium pada tahun
1980 yang merupakan pengembangan dari bahasa C. Pada awalnya bahasa ini disebut
dengan C With Classes, sedangkan menggunakan nama C++ dimulai sejak 1983, yang
diusulkan oleh Rick Mascitti. Bahasa C++ mengembangkan kemampuan dari bahasa C yaitu
dengan :
1. Memberikan dukungan untuk menciptakan dan memanfaatkan abstraksi data.
2. Dapat digunakan untuk pemrogram berorientasi objek
3. Dan yang terakhir telah menutupi beberapa kekurangan dalam bahasa C
Bahasa program C++ adalah penerus bahasa program C yang merupakan bahasa
pemrograman tingkat menengah. Pencipta bahasa program C adalah Brian W. Kerninghan dan
Dennis M. Ritchie pada tahun 1972. Sedangkan C++ diciptakan satu dekade setelah C oleh
Bjarne Stroustrup dari Labortorium Bell, AT&T pada tahun 1983. Pada awalnya C++ diberi
nama A Better C.
Algoritma adalah urutan aksi-aksi yang dinyatakan dengan jelas dan tidak rancu untuk
memecahkan suatu masalah dalam rentang waktu tertentu. Setiap aksi harus dapat dikerjakan
dan mempunyai efek tertentu. Algoritma dapat dituliskan dengan banyak cara, mulai dari
menggunakan bahasa alami yang digunakan sehari-hari, simbol grafik bagan alir, sampai
menggunakan bahasa pemrograman seperti bahasa C atau C++.C & C++.
Berbicara tentang C++ biasanya tidak lepas dari C, sebagai bahasa pendahulunya,
pencipta C adalah Brian W. Kerninghan dan Dennis M. Ritchie pada sekitar tahun 1972, dan
sekitar satu dekade setelahnya diciptakanlah C++, oleh Bjarne Stroustrup dari Labortorium
Bell, AT&T, pada tahun 1983. C++ cukup kompatibel dengan bahasa pendahulunya C. Pada
mulanya C++ disebut A Better C. Nama C++ diberikan oleh Rick Mascitti pada tahun 1983,
yang berasal dari operator increment pada bahasa C. Keistimewaan yang sangat berarti dari
C++ ini adalah karena bahasa ini mendukung pemrograman yang berorientasi objek (OOP
/ Object Oriented Programming).
1.3 Tujuan
1. Mengetahui tentang Pencarian Pada Elemen Array
2. Mengetahui tentang Pengurutan Pada Elemen Array
3. Mengerti tentang Array Multidimensi
BAB II
PEMBAHASAN
2.1 Pencarian Pada Elemen Array
Apa itu searching? Searching adalah metode pencarian informasi dalam suatu aplikasi
menggunakan suatu kunci ( key ). Searching diperlukan untuk mencari informasi khusus dari
sekumpulan data yang disimpan dalam sebuah array.
Sesuai dengan judulnya, dalam modul ini kita akan membahas proses pencarian /
searching data pada suatu array / barisan data. Jika diketahui ada sebuah array / barisan data
bernama A yang menampung 10 data yang bertipe integer sbb A={1,2,3,4,8,5,7,9,6,0} dan kita
diberi tugas untuk mencari beberapa data misal:
1. Jika data yang akan dicari dalam array A adalah 6, maka dengan cepat dapat kita
ketahui bahwa data 6 ada dalam array A pada index ke-8 (index pada array dimulai
dari 0).
2. Sedangkan jika data yang akan dicari dalam array A adalah 12, maka dapat
disimpulkan bahwa array A tidak memiliki data 12 tersebut.
Nah, kita sudah memahami proses pencarian data yang sederhana tersebut dalam pikiran
kita, sekarang permasalahannya adalah bagaimana mengimplementasikannya kedalam
program ?.
Pada umumnya dikenal dua metode searching antara lain : Sequensial search dan binary
search, Untuk lebih memahami kedua metode ini lebih baik kita mulai dari metode yang paling
sederhana terlebih dahulu yaitu sequensial search.
A. Sequensial search
Disebut juga sebagai metode pencarian urut adalah metode pencarian yang paling mudah.
Bayangkan saja jika anda dihadapkan pada sebuah rak buku, dan anda diberi tugas untuk
mencari sebuah buku dari rak tersebut. Sudah tentu anda akan mulai mencarinya satu – persatu
entah itu dari atas atau dari bawah sampai buku yang dimaksud ketemu.
B. Binary search
Proses pencarian binary search hanya dapat dilakukan pada kumpulan data yang
sudah diurutkan terlebih dahulu. Jika terdapat N buah data yang akan dolah, data yang dicari
akan dibandingkan dengan data ke-N jika data ke-N lebih besar dari data yang dicari maka
akan dilakukan pembagian data menjadi dua bagian. Kemudian ujung data pada setiap bagian
dibandingkan lagi dengan nilai yang akan dicari.
Berikut ini contoh program yang akan melakukan pencarian nilai dari sekumpulan data
yang bertipe int.
2.2 Pengurutan Pada Elemen Array
Metode Bubble
1. Elemen pertama dibandingkan dengan elemen kedua. Apabila elemen kedua lebih
besar dari elemen pertama, maka kedua elemen tersebut ditukar.
2. Elemen kedua dan ketiga dibandingkan, bila elemen ketiga < kedua elemen ditukar,
proses terus berlangsung dengan elemen ketiga dan keempat, dan seterusnya.
Sampai akhir deretan data tercapai.
3. Bila tak ada lagi yang ditukarkan, algoritma berhenti.Bila terjadi pertukaran selama
berurutan, proses akan diulang. Sehingga akhirnya semua elemen tersusun, tidak ada
pertukaran lagi, dan algoritma berhenti.
a. Meskipun simpel metode Bubble Sort merupakan metode pengurutan yang paling
tidak efisien.
b. Pada saat mengurutkan data yang sangat besar akan mengalami kelambatan luar
biasa, atau dengan kata lain kinerja memburuk cukup signifikan ketika data yang
diolah jika data cukup banyak.
c. Jumlah pengulangan akan tetap sama jumlahnya walaupun data sesungguhnya sudah
cukup terurut. Hal ini disebabkan setiap data dibandingkan dengan setiap data yang
lain untuk menentukan posisinya.
B. Maximum/Minimum Sort
Pengurutan maksimum didasarkan pada pemilihan elemen maksimum atau
minimum array sebagai basis pengurutan. Gagasannya adalah memilih elemen
maksimim/minimum tersebut kemudian menukarkan elemen tersebut dengan elemen
terujung larik (ujung kiri atau ujung kanan). Selanjutnya elemen terujung tersebut
‘diisolasi’ dan tidak disertakan pada proses selanjutnya. Proses yang sama diulang untuk
elemen larik yang tersisa, yaitu memilih elemen maksimum/minimum berikutnya dan
mempertukarkannya dengan terujung larik sisa. Pengurutan ini dinamakan juga
pengurutan seleksi (selection sort).
Selection sort merupakan metode pengurutan dengan mencari nilai data terkecil dan
nilai data terbesar dimulai dari data diposisi 0 hingga diposisi N-1.
Jika terdapat N data dan data terkoleksi dari urutan 0 sampai dengan N-1 maka
algoritma pengurutan dengan metode selection sort adalah sebagai berikut;
Jika pada posisi pos ditemukan data yang terkecil, tukarkan data diposisi pos dengan
data di posisi i jika k.
A. Array 2 Dimensi
Array dua dimensi adalah array yang terdiri dari n buah baris dan m buah kolom,
atau array dua dimensi juga biasa disebut sebagai array yang mempunyai dua subskrip,
yaitu baris dan kolom. Bentuknya dapat sobat bayangkan seperti matriks atau tabel.
dimana indeks pertama menunjukan baris dan indeks kedua menunjukan kolom.
Pada ilustrasi array dua dimensi diatas, dimisalkan terdapat sebuah array dua dimensi
dengan nama "A", array A memiliki jumlah elemen baris sebanyak 3 dan jumlah elemen
kolom sebanyak 4.
main()
{
int nilai[5][3]={{7,8,9},{3,4,7},{7,4,9},{5,9,4},{6,8,5}};
int m,n=0;
cout<<"Daftar Nilai\n";
cout<<"----------\n";
cout<<"|No|M|F|S|\n";
cout<<"----------\n";
for(n=0;n<5;n++)
{
cout<<"|"<<(n+1)<<" |";
for(m=0;m<3;m++)
cout<<nilai[n][m]<<"|";
cout<<"\n";
}
cout<<"----------";
return 0;
}
BAB III
PENUTUP
3.1 Kesimpulan
1. Struktur data merupakan salah satu bahan dasar pembuatan program.
2. Pemakaian struktur data yang tepat di dalam proses pemrograman, akan
menghasilkan algoritma yang jelas dan tepat sehingga menjadikan program secara
keseluruhan lebih sederhana.
3. Array merupakan bagian dari struktur data yaitu termasuk kedalam struktur data
sederhana yang dapat di definisikan sebagai pemesanan alokasi memory sementara
pada komputer.
4. Apabila kita membuat program dengan data yang sudah kita ketahui batasnya maka
kita menggunakan Array (type data statis), namun apabila datanya belum kita
ketahui batasnya maka gunakan POINTER (type data dinamis).
3.2 Saran
Dengan selesainya makalah ini, kami mengucapkan banyak terima kasih kepada semua
pihak yang ikutan di wawasannya dalam penulisan ini. Tak lupa kami menyadari bahwa dalam
penulisan makalah ini masih jauh dari kesempurnaan, untuk itu saran dan kritik yang
membangun selalu kami tunggudan kami perhatikan
DAFTAR PUSTAKA
http://ekayunitasari1996.blogspot.com/2014/03/searching-pencarian-pada-elemen-array.html
http://ihsanpolsky.blogspot.com/2014/01/algorotma-pengurutan-array.html
http://www.materidosen.com/2017/06/array-dua-dimensi-c-lengkap-contoh.html
http://www.materidosen.com/2017/06/array-multidimensi-dimensi-c-lengkap.html