Array atau Larik adalah sebuah variabel yang memiliki serangkaian elemen dari jenis tipe data yang sama. Elemen-elemen tersebut dirangkai di dalam memori yang berdekatan dengan elemen lainya. konsep ini mirip seperti struct dan class yang dapat merupakan kumpulan dari variabel, perbedaan dengan mereka adalah array merupakan kumpulan variabel dengan satu indentifier dan satu tipe data yang sama, dan dalam istilah-istilah array kumpulan dari variabel tersebut adalah elemen.
Jika kita akan mendata nilai-nilai dari siswa pada suatu kelas dan dalam satu kelas terdapat 50 siswa. Dengan arti kita membutuhkan 50 tempat penyimpanan (variabel).
double nilai1, nilai2, nilai3, … , nilai50;
Untuk yang belum mengenal array akan berpikiran untuk membuat 50 variabel untuk masing-masing variable seperti pernyataan di atas. Cara di atas sangat tidak efektif atau salah.
Bagaimana jika satu kelas tidak selalu memiliki 50 siswa, mungkin di masa depan akan memiliki siswa lebih dari 50 siswa di dalam kelas. Yang berarti program itu akan selalu membutuhkan modifikasi, bukan hanya pada variabel tersebut tapi keseluruhan program, seperti input, proses dan output.
Dalam bahasa pemrograman C++ dan hampir semua bahasa pemrograman, menyediakan fitur yang bernama “Array” atau “Larik”. Array memungkinkan kita untuk membuat sebuah variabel yang dapat menyimpan banyak nilai. Di dalam array terdapat banyak elemen yang merupakan tempat untuk penyimpanan setiap nilai.
Dasar Array
- Kumpulan dari nilai-nilai data (Sekumpulan data)
- Bertipe sama dalam urutan tertentu
- Menggunakan nama variable yang sama.
- Nilai-nilai data di suatu array disebut dengan elemen-elemen array
- Pengalamatan nya berurutan (sequence).
- Letak urutan dari elemen-elemen array ditunjukkan oleh suatu subscript atau indeks
- Dibedakan melalui index nya.
- Index dalam array selalu dimulai dari angka 0, bukan 1.
- Untuk mendeklarasikan suatu array satu dimensi dalam bahasa C adalah dengan menggunakan tanda [ ]
Deklarasi Array
Untuk mendeklarasikan sebuah variabel array sama seperti kita mendeklarasikan sebuah variabel biasa yang dimana membutuhkan tipe data, identifier, dan titik koma. Untuk merubah variabel biasanya menjadi variabel array adalah dengan menambahkan operator subscript ( [ ] ).
Untuk parameter di dalam operator subscript disebut sebagai index atau subscript, tempat dimana kita memberitahukan compiler berapa jumlah variabel yang akan dialokasi sesuai yang kita inginkan. dan dalam array, istilah dari banyak variabel yang dialokasi itu disebut sebagai elemen.
Adapun bentuk umum dari pendeklarasian tersebut adalah sebagai berikut:
tipe_data nama_array [banyak elemen];
Contoh apabila kita ingin mendeklarasikan array dengan nama A sebanyak 50 elemen data bertipe data int , maka sintaknya sebagai berikut :
int A[50];
Di atas adalah contoh penulisan dari penggunaan array, variabel di atas memiliki identifier “nilai” bertipe data integer sebanyak 50 elemen. Array tersebut memungkinkan kita untuk menyimpan 50 nilai berbeda dalam satu identifier variabel “nilai”.
Pernyataan di atas dinamakan Array statis atau Fixed array, karena kita mendeklarasikan variabel array dengan menggunakan konstanta bernilai 50 sebagai index saat punulisan program. Dan pemberian index hanya dapat dilakukan menggunakan konstanta dan dilakukan sebelum kompilasi (Compile-time), tidak saat program berjalan (Runtime).
Inisialisasi Array
Saat mendirikan variabel array kita juga dimungkinkan untuk memberi nilai saat deklarasi variabel array secara bersamaan, inisialisasi array disebut sebagai “Initializer list”, yang kita butuhkan untuk inisialisasi sebuah variabel array adalah sepasang tanda kurung kurawal yang mengapit semua nilai tersebut.
Contoh Penulisan
int A[5] = {100, 90, 80, 70, 60};
atau bisa dengan cara
int A[50]; A[0] = 100; A[1] = 90; A[2] = 80; A[3] = 70; A[4] = 60;
di atas adalah contoh dari cara inisialiasi sebuah variabel array yang memiliki 5 elemen. Untuk melakukan inisialisasi kita membutuhkan tanda sama dengan setelah itu nilai dari setiap elemen. Nilai-nilai setiap elemen akan di kurung di dalam sepasang tanda kurung kurawal. Setiap nilai dipisahkan dengan tanda koma.
Contoh di atas adalah pernyataan yang valid, meskupun variabel tersebut memesan 50 elemen tetapi yang diinisialisasi hanya memberikan 5 nilai. Dari 10 nilai tersebut akan mengisi elemen pertama hingga ke sepuluh. Untuk elemen 6 sampai 50 akan di inisialisasi dengan nilai “0” atau kosong.
Inisialisasi adalah sebuah pilihan, kita bebas untuk membuat variabel dengan inisialisasi atau tanpa inisialisasi. Jika variabel array di atas tidak melakukan inisialisasi maka otomatis setiap elemen akan mengandung nilai acak yang berasal dari pengguna memori sebelumnya.
Mendeklarasikan array tanpa banyaknya elemen
Pada bahasa pemrograman C++ dalam mendeklarasikan sebuah variabel array kita dimungkinkan untuk mendeklarasikan variabel array tanpa menyertakan banyaknya elemen, hanya operator subscript tanpa nilai di dalamnya. Tapi untuk melakukan hal itu, kita diwajibkan untuk menyertai dengan inisialisasi. bukan berarti jika variabel array tidak menggunakan ukuran akan memiliki elemen yang dinamis. Variabel array dengan cara tersebut masih dalam golongan variabel array statis. Dan compiler selalu akan membutuhkan ukuran array untuk alokasi (elemen) yang dibutuhkan.
Ketika kita mendeklarasikan sebuah variabel array tanpa ukuran array, maka ukuran dari variabel array tersebut otomatis akan dihitung berdasarkan jumlah nilai pada proses inisialisasi.
Contoh :
int nilai[]={2,4,7,9}
pada contoh di atas compiler akan mendeklarasikan sebuah variabel array yang memiliki 4 elemen yang dihitung berdasarkan jumlah nilai pada proses inisialisasi.
Mengakses Variabel Array
Untuk mengakses variabel array tidak jauh beda dengan cara mengakses variabel biasa, untuk mengakses variabel array membutuhkan Operator subscript ( [ ] ) dengan index di dalamnya yang diletakan setelah identitas variabel.
Contoh :
A[2];
Contoh di atas akan mengakses elemen ketiga (index 2) dari variabel “A”. Index yang berada di dalam subscript digunakan untuk mengakses nilai elemen berdasarkan konstanta yang diberikan.
Bahasa pemrograman C++ tepatnya pada fitur array selalu menggunakan bilangan cacah (bilangan dimulai dari 0), setiap elemen yang kita pesan akan di nomori berdasarkan urutan dari 0 sampai sebanyak yang kita pesan. Misalnya kita memesan A[50] maka elemen pertama berada pada urutan nomer 0 dan elemen terakhir berada pada urutan 49.

Elemen pada array
Jika kita menuliskan nomer 10 ( A[10] )maka elemen yang akan diakses adalah elemen nomer urut nomer 11.
Contoh :
#include <iostream>
using namespace std;
int main ()
{
char grade[3]={};
grade[0] = 'a';
grade[1] = 'b';
grade[2] = 'c';
cout<<"0 : "<<A[0]<<endl;
cout<<"1 : "<<A[1]<<endl;
cout<<"2 : "<<A[2]<<endl;
system ("pause");
return 0;
}
Dalam mengakses array, dalam pemrograman C++ kita dimungkinkan untuk mengakses elemen dari array yang bukan merupakan anggota array tersebut. misalnya kita mencoba akses index nomer 50, tetapi variabel array itu sendiri hanya memiliki 10 elemen.
Kita dimungkinkan untuk mengakses index dari array meskipun bukan merupakan anggota dari variabel array tersebut, itu dapat dilakukan tapi hal itu dilarang untuk dilakukan. Karena apa yang coba kita akses bukan merupakan memori milik program kita. Bisa saja memori tersebut dimiliki oleh program lain.
Referensi :
- https://www.belajarcpp.com/tutorial/cpp/array/
- https://www.petanikode.com/cpp-array/
- https://www.duniailkom.com/tutorial-belajar-c-plus-plus-tipe-data-array-bahasa-c-plus-plus/
Be the first to comment