Anda di halaman 1dari 8

ARRAY

Apa itu array ?


Array merupakan struktur data yang digunakan untuk menyimpan sekumpulan data dalam
satu tempat.
Setiap data dalam Array memiliki indeks (nomor urut), sehingga kita akan mudah
memprosesnya.
Sudah paham? Kayaknya belum, tapi gapapa kita lanjut dulu ke contoh biar paham.

Kapan array digunakan ?


Array digunakan ketika kita menggunakan banyak data dengan tipe data yang sama. Misalnya
kita mau menyimpan nama-nama teman sekelas dalam sebuah program, kita dapat
menyimpannya seperti contoh di bawah ini:
string nama1 = “Ahmad”;
string nama2 = “Bintang”;
string nama3 = “Cinta”;
string nama4 = “Dion”;
string nama5 = “Erika”;

Sebenarnya penulisan seperti itu juga tidak salah dan boleh-boleh saja, tetapi nanti kalau
misalkan kita menggunakan data yang banyak hingga ratusan tentu akan sangat melelahkan
bukan? Nah disini kita bisa menggunakan array, sehingga bisa diubah menjadi seperti di bawah
ini:
string nama[5] = {“Ahmad”,”Bintang”,”Cinta”,”Dion”,”Erika”};

Jadi lebih sederhana kan? Pasti!

Bagaimana cara membuat array?


Setelah mengerti kapan kita harus menggunakan array, lalu bagaimana cara membuat/menulis
array di C++ ?
Caranya mudah saja, seperti pada contoh pembuatan array di atas, begini susunan penulisan
array yang benar.
Lanjut di halaman berikutnya ya..
Index dari array digunakan untuk mengidentifikasi tiap data yang ada pada array. Dari contoh di
atas terdapat 3 data dalam array dengan index / urutan sebagai berikut :
Array index ke-0 = 0
Array index ke-1 = 3
Array index ke-2 = 2

Mudah bukan? Sampai sini sudah paham kan? Kalau belum paham, coba baca lagi dari awal
dengan pelan-pelan dan resapi sedikit demi sedikit. :D

Bagaimana cara mendapatkan data array?


Lalu, bagaimana caranya kita mendapatkan data array untuk ditampilkan (ouput/cout) atau
digunakan untuk yang lainnya?

Seperti yang sudah kita ketahui, array akan menyimpan sekumpulan data dan memberinya
nomer indeks agar mudah diakses. Indeks array selalu dimauli dari nol 0.
Misalkan kita punya array seperti ini:

char huruf[5] = {'a', 'b', 'c', 'd', 'e'};

Bagaimana cara mengambil huruf c ?


Jawabannya:
huruf[2];

Mengapa bukan huruf[3]?


Ingat: indeks array selalu dimulai dari nol.
Biar lebih jelas, mari kita coba dalam program. Silahkan buat file baru dengan
nama contoh_array.cpp, kemudian isi dengan kode berikut:
#include <iostream>
using namespace std;

int main(){
char huruf[5] = {'a', 'b', 'c', 'd', 'e'};

// mengambil data pada array


cout << "Huruf: " << huruf[2] << endl;

return 0;
}

Setelah itu, coba compile dan jalankan.


Maka hasilnya:

Bagaimana mengganti isi data dalam array?


Data pada array dapat kita isi ulang dengan cara seperti ini:

huruf[2] = 'z';

Maka isi array huruf pada indeks ke-2 akan bernilai 'z'.
Kalau tidak percaya, Kamu bisa coba buktikan sendiri.

Silahkan ubah kode pada contoh_array.cpp menjadi seperti ini:


#include <iostream>
using namespace std;

int main(){
// isi awal array
char huruf[5] = {'a', 'b', 'c', 'd', 'e'};
// mengubah isi data array
huruf[2] = 'z';

// mencetak isi array


cout << "Huruf: " << huruf[2] << endl;

return 0;
}

Hasil outputnya:
Huruf: z

Menggunakan perulangan dalam array


Kenapa kita perlu menggunakan perulangan dalam array? Kembali ke contoh_array.cpp di atas
ya. Bagaimana kita bisa menampilkan semua data array? Bisa seperti contoh di bawah ini.
Silahkan ubah kode pada contoh_array.cpp menjadi seperti ini:
#include <iostream>
using namespace std;

int main(){
// isi awal array
char huruf[5] = {'a', 'b', 'c', 'd', 'e'};

// mengubah isi data array


huruf[2] = 'z';

// mencetak isi array


cout << "Huruf: " << huruf[0] << endl;
cout << "Huruf: " << huruf[1] << endl;
cout << "Huruf: " << huruf[2] << endl;
cout << "Huruf: " << huruf[3] << endl;
cout << "Huruf: " << huruf[4] << endl;
cout << "Huruf: " << huruf[5] << endl;

return 0;
}

Kalau datanya sedikit bisa saja menggunakan cara seperti di atas, tapi lagi-lagi kalau datanya
ratusan atau lebih, bisa keriting jari kita.
Nah, disini perulangan bisa kita digunakan. Contohnya dari kode di atas bisa diubah seperti
contoh di bawah ini.
#include <iostream>
using namespace std;

int main(){
// isi awal array
char huruf[5] = {'a', 'b', 'c', 'd', 'e'};

// mengubah isi data array


huruf[2] = 'z';

// mencetak isi array dengan perulangan for


for(int i=0;i<5;i++){
cout << "Huruf: " << huruf[i] << endl;
}

return 0;
}

Outputnya akan sama seperti di bawah ini:

Mengambil Panjang array


Seperti yang kita tahu array bahwa array memiliki nomor index, maka data array dapat
diketahui panjangnya dan dapat kita manfaatkan.
Pada contoh perulangan di atas kita menggunakan batas maksimal perulangan data yaitu 5
dengan menulis i < 5 karena kita dapat mengetahui dengan jelas jumlah datanya. Nah kalau kita
sendiri tidak tahu jumlah pasti isian data array, kita dapat mengambil panjang aray dengan
menambahkan kode seperti pada contoh di bawah.
int length = sizeof(huruf)/sizeof(*huruf);

// mencetak isi array


for(int i=0;i<length;i++){
cout << "Huruf: " << huruf[i] << endl;
}
Cara kedua, kita bisa gunakan Class Template dari C++. Class Template ini mulai ditambahkan
pada C++11.

Contoh:
// membuat array dengan class
array<string, 5> names = {"Ali", "Abi", "Ami", "Mia", "Nia"};
// mengambil ukuran array
cout << names.size();
Tapi sebelum kita dapat menggunakan Class Template array<>, kita harus mengimpornya
dengan #include.

Contoh lengkap: array_class.cpp

#include <iostream>
#include <array>
using namespace std;

int main(){
array<string, 5> names = {"Ali", "Abi", "Ami", "Mia", "Nia"};

printf("Ada %d data di dalam array: \n", names.size());

for(int i = 0; i < names.size(); i++){


cout << i << ". " << names[i] << endl;
}

return 0;
}
Hasilnya:

Sampai di sini sudah bisa dipahami? Kalau masih ada yang belum paham boleh tanya
langsung ke Bu Winda ya.

Oke, masih ada satu hal lagi yang perlu kalian ketahui tentang array. Simak penjelasan di
halaman berikutnya.
Array Multidimensi
Array yang kita buat pada contoh-contoh program di atas adalah array satu dimensi.

Array bisa dibuat dua dimensi bahkan lebih. Perhatikan ilustrasi yang membandingkan array
satu dimensi yang telah kita pelajari di atas dengan array multidimensi.

Gambar di sebelah kiri menunjukkan array satu dimensi sedangkan gambar di sebelah kanan
menunjukkan array dua dimensi. Perbedaannya kalau kalian perhatikan, di array dua dimensi
memiliki 2 baris data sedangkan pada array satu dimensi hanya memiliki satu baris data.

Pada array dengan nama string nama[2][3] angka 2 menunjukan jumlah baris dan angka 3
menunjukkan jumlah kolom.

Contoh array dua dimensi:

int matriks[3][3] = {
{1, 3, 5},
{5, 3, 1},
{6, 2, 3}
};
Array dua dimensi biasanya digunakan untuk membuat matriks.

Lalu bagaimana cara mengambil data dari array dua dimensi?

Begini caranya:

matriks[1][2];
Contoh program:

#include <iostream>
using namespace std;

int main(){
int matriks[3][3] = {
{1, 3, 5},
{5, 3, 1},
{6, 2, 3}
};

printf("Isi Data pada indeks ke-(1,0): %d\n", matriks[1][0]);

return 0;
}
Hasilnya:

Bagaimana? Sudah paham sama array kan? Pasti dong. Kalau masih bingung sama seperti
tips sebelumnya, dibaca pelan-pelan dan dicoba kodenya supaya lebih mengena.
Materi hari ini cukup sampai di sini dulu, next time kita bahas lagi tentang array ya. 

Anda mungkin juga menyukai