Pengertian Array

9.1. Pengertian Array

Tipe data array menjelaskan dapat menampung 25 nilai bertipe jangkauan nilai yang dapat float. Setiap nilai yang ditugaskan ke ditampung pada sebuah variabel dan

array harus bertipe sama dengan kumpulan operasi yang dapat array tersebut dilakukan terhadap variabel tersebut.

Array adalah variabel yang Dengan pengecualian pada string mampu menyimpan sejumlah nilai karakter, semua tipe yang telah yang bertipe sama. Untuk dipelajari sampai saat ini hanya dapat

mendeklarasikan sebuah array, harus menampung sebuah nilai.

disebutkan tipe dari array yang dibuat Pada saat tertentu program yang

misalnya int, float atau double dan dibuat dibutuhkan untuk juga ukuran array. Untuk menentukan menyelesaikan suatu permasalahan ukuran array,perlu ditempatkan yang dikehendaki suatu variabel yang

jumlah nilai yang dapat disimpan dapat menampung banyak nilai. array dalam sebuah tanda kurung Sebagai contoh variabel skor kurawal siku yang terletak sesuah barangkali mencatat skor ujian dari nama array. 100 siswa. Demikian juga variabel

Deklarasi berikut sebagai contoh gaji mungkin menampung gaji yang untuk menciptakan array bernama berlainan dari masing-masing skor yang mampu menyimpan 100 pegawai suatu perusahaan.

skor nilai yang bertipe int. Array adalah struktur data yang dapat menyimpan sejumlah nilai int skor[100]; bertipe sama, sebagai contoh kita dapat menciptakan sebuah array

Pada saat dideklarasikan sebuah yang dapat menampung 100 nilai array, compiler C mengalokasikan bertipe int dan array kedua yang memori yang cukup untuk

2008 | Direktorat Pembinaan SMK

Bahasa Pemrograman Array

menampung semua elemen sesuai int scores[5] = {80, 70, 90, 85, 80} ; dengan yang dideklarasikan. Masukan pertama berada pada lokasi

Pada saat kita menugaskan nilai

0. Sebagai contoh berdasarkan array awal ke suatu array , kita harus skor, pernyataan berikut menugaskan

melingkupi nilai-nilai tersebut dengan nilai 80 pada elemen pertama dari tanda kurung kurawal{}. Dalam hal array

ini, ukuran array sesuai dengan jumlah nilai yang ditugaskan ke array.

skor[0] = 80; Akan tetapi pernyataan berikut akan menugaskan empat nilai titik

Karena elemen pertama dari mengambang ke array yang dapat array dimulai dengan offset 0, maka

menyimpan 64 nilai.

elemen terakhir dari array adalah satu lokasi sebelum ukuran array. float salaries[64] ={2500000.0, Berdasarkan array skor diatas, 3200000.0, 4400000.0, 5500000.0}; pernyataan berikut menugaskan nilai

ke elemen terakhir dari array. Tergantung dari compiler yang digunakan, nilai-nilai yang ditugaskan skor[99] = 75;

ke elemen-elemen yang tidak secara eksplisit ditugaskan mungkin diisi

Untuk inisialisasi array ada dengan 0. Sebagai pegangan kita beberapa macam yang sering harus tidak menganggap bahwa dilakukan sebagai contoh perhatikan

compiler akan menginisialisasi potongan program berikut ini :

elemen-elemen yang lain. Jika kita tidak menyebutkan ukuran array, char title[] = "Dasar Pemrograman" ; kompiler akan mengalokasikan

char section [ 64 ] = "Arrays" ; memori yang hanya cukup untuk menampung nilai-nilai yang

Pada kasus yang pertama, disebutkan. Deklarasi array berikut compiler C akan mengalokasikan 17

menciptakan array yang cukup byte untuk menampung string. Pada

menampung tiga buah nilai yang kasus yang kedua, compiler akan bertipe long. mengalokasikan array 64 byte, menginisialisasi enam karakter yang long planets[] = {1234L, 5678L, 12347L}; yang pertama dengan huruf-huruf

“Arrays” dan karakter NULL. Array adalah suatu variabel yang Kebanyakan compiler juga akan terdiri dari sekumpulan data dimana menginisialisasi lokasi byte-byte data-data tersebut mempunyai tipe tersisa dengan NULL. Pada saat data yang sama. Setiap data dideklarasikan array dengan tipe lain,

disimpan dalam alamat memori yang kita juga dapat menginisialisasinya berbeda-beda dan disebut dengan dengan cara yang sama. Sebagai elemen array. Setiap elemen contoh pernyataan berikut mempunyai nilai indek sesuai dengan menginisialisasi array integer scores urutannya. Melalui indek inilah kita dengan nilai 80, 70, 90, 85 dan 80.

dapat mengakses data-data tersebut. 334

Direktorat Pembinaan SMK | 2008

Array Bahasa Pemrorgraman

Indek dari elemen array ini, baik nama_var[indeks] dalam bahasa C++ maupun Java dimulai dari 0, bukan 1 seperti dalam

sehingga, untuk array nilai_tes, bahasa Pascal.

maka:

Dalam beberapa literatur, array sering disebut (diterjemahkan) nilai_tes[0]  elemen pertama dari sebagai larik. Array adalah kumpulan

nilai_tes

dari nilai-nilai data bertipe sama nilai_tes[4]  elemen ke‐5 dari dalam urutan tertentu yang nilai_tes\ menggunakan sebuah nama yang

sama. Nilai-nilai data di suatu array perhatikan contoh berikut ini: disebut dengan elemen-elemen array. Letak urutan dari elemen-

nilai_tes[0] = 70;

elemen array ditunjukkan oleh suatu scanf(“%f”, &nilai_tes[2]); subscript atau indeks. Suatu array

berdimensi satu dideklarasikan dalam Contoh pertama merupakan bentuk umum berupa: pemberian nilai 70 ke nilai_tes[0].

Sedangkan contoh 2 merupakan tipe_data nama_var[ukuran]; perintah untuk membaca data

bilangan dari keyboard dan diberikan dimana :

ke nilai_tes[2]. Pada contoh 2 ini  tipe_data : untuk menyatakan tipe

dari elemen array, misalnya int,

&nilai_tes[2]

char, float.

 nama_var : nama variabel array berarti “alamat dari nilai_tes[2]”. Perlu

 ukuran : untuk menyatakan jumlah diingat bahwa scanf() memerlukan

maksimal elemen array. argument berupa alamat dari variabel Contoh pendeklarasian array :

yang digunakan untuk menyimpan nilai masukan. Selengkapnya

float nilai_tes[5]; perhatikan contoh program di bawah ini.

pada program diatas menyatakan Sebuah array dapat diinisialisasi bahwa array nilai_tes mengandung 5

sekaligus pada saat dideklarasikan. elemen bertipe float. Pada bahasa C,

Untuk mendeklarasikan array, nilai- data array akan disimpan dalam nilai yang diinisialisasikan dituliskan memori yang berurutan. Elemen di antara kurung kurawal ({}) yang

pertama mempunyai indeks bernilai dipisahkan dengan koma.

0. Jika variabel nilai_tes

dideklarasikan sebagai array dengan int jum[12] = {31, 28, 31, 30, 31, 30, 31,

5 elemen, maka elemen pertama 31,

memiliki indeks sama dengan 0, dan

elemen terakhir memiliki indeks 4. Ada beberapa variasi cara Bentuk umum pengaksesan array mendeklarasikan sebuah array

adalah: (dalam hal ini yang berdimensi satu), di antaranya adalah sebagai berikut :

2008 | Direktorat Pembinaan SMK

Bahasa Pemrograman Array

 int numbers[10]; Dalam Java pendeklarasian  int numbers[10] = {34, 27, 16};

array dan pembuatan objek array  int numbers[ ] = {2, -3, 45, 79, -14,

dapat dilakukan alam satu sintak,

5, 9, 28, -1, 0};

yaitu :

 char text[ ] = "Welcome to New Zealand.";

int[ ] a = new int[10];

 float radix[12] = {134.362, 1913.248};

atau

 double radians[1000];

int a[ ] = new int[10];

Array dideklarasikan dengan tanda [ ]

(bracket), baik dalam bahasa C++

dan Java. Bentuk umum dari tipe Baik C++ maupun Java, untuk data array adalah :

mengakses elemen array, misalnya elemen ke-10 dari array dan

tipe_data nama_array[jumlah_elemen] kemudian menampung nilainya dalam sebuah variabel x, maka

Jika ingin mendeklarasikan sintaknya adalah : sebuah array dengan tipe data

integer dengan nama a dan jumlah x=a[9]; elemen array-nya 10 maka kodenya

adalah : Untuk memasukkan data ke dalam array, sintak yang digunakan adalah :

int a[10];

a[nomor_elemen] = data; Dalam bahasa Java pendeklarasian array lebih variarif. a[0] = 5; Selain dengan kode seperti di atas, a[1] = 6; Java juga dapat mendeklarasikan a[2] = 7; array dalam bentuk :

dan seterusnya.

int[ ] a; Agar lebih efisien dan efektif, maka pemasukan data dalam array Kemudian setelah melakukan dapat menggunakan perulangan deklarasi array, baik dengan kode seperti berikut ini : yang pertama maupun yang kedua, Java harus menciptakan (membuat) for (i=0; i<jumlah_data; i++) {

objek terlebih dahulu sebelum array cout << “a[“ << i << “] = “; dapat digunakan karena dalam Java

cin >> a[i];

array merupakan sebuah Class. Cara

menciptakan objek array dalam Java

adalah : Berikut contoh program lengkap dalam bahasa C++ adalah :

a = new int[10];

Program 9.1 336

Direktorat Pembinaan SMK | 2008

Array Bahasa Pemrorgraman

#include <iostream>

using namespace std;

int a[ 10 ],jumlah= 10 ; bool cari(int cariData,int nElemen) { int i; for(i= 0 ; i<nElemen; i++) { if(a[i] == cariData) break;

} if(i == nElemen) return false; else return true;

} void input(int data,int i) { a[i] = data; } void hapus(int data,int nElemen) {

int i; for(i= 0 ; i<nElemen; i++) { if( data == a[i] ) break;

} if(i==nElemen) cout << "Data" << data << "tidak terhapus (tidak ada)" << endl; else {

for(int j=i; j<nElemen‐ 1 ; j++) { a[j] = a[j+ 1 ];

} cout << "Data " << data << " dihapus" << endl; }

} void tampil(int nElemen) {

for(int i= 0 ; i<nElemen; i++) cout << a[i] << " " ; cout << endl;

} void main() {

int data; for(int i= 0 ; i<jumlah; i++){ cout << "a[" << i << "] =" ; cin >> data; input(data,i); }

2008 | Direktorat Pembinaan SMK

Bahasa Pemrograman Array

tampil(jumlah);

int cariData = 12 ;

if (cari(cariData,jumlah)==false)

cout << "Data " << cariData << " tidak ditemukan" << endl;

else cout << "Data " << cariData << " ditemukan" << endl; hapus( 89 ,jumlah); jumlah ‐‐; hapus( 0 ,jumlah); jumlah ‐‐; tampil(jumlah);

Program di atas terdiri dari Pencarian data dilakukan oleh empat function yaitu function cari() program utama. Function pencarian yang digunakan untuk mencari data data ini (cari()) dilakukan dengan dalam array, function input() mengunjungi atau mengakses data digunakan untuk memasukkan data array satu persatu dan kemudian dalam array, hapus() untuk membandingkan data pada setiap menghapus data dalam array, dan elemen indek dengan data yang function tampil() untuk menampilkan dicari. Jika nilai datanya sama data dalam array.

dengan nilai data yang dicari, maka Keempat function tersebut proses pencarian data dihentikan. kemudian dipanggil satu per satu Jika tidak, maka pencarian terus oleh program utama adalah kode dilakukan sampai semua data array untuk memasukkan data dalam array

diakses. Jika proses pencarian yang dengan argumen pemanggilan dilakukan sama dengan jumlah function input() sebanyak sepuluh kali

elemen array, maka data yang dicari dengan menggunakan perulangan.

tidak ditemukan. Proses pencarian Setelah memasukkan data seperti ini merupakan metode linier selesai, maka data yang telah atau sekuensial (Linear / Sequential dimasukan dalam array kemudian Search). ditampilkan dengan menggunakan

Program ini melakukan proses argument. Function tampil() penghapusan data sebanyak dua kali mengakses data array satu persatu dimana setiap kali melakukan dan kemudian menampilkannya.

penghapusan data maka jumlah elemen array dikurangi satu.

Keluaran dari program tersebut adalah: a[0] = 18 a[1] = 12 a[2] = 34 a[3] = 44 a[4] = 89 a[5] = 34

Direktorat Pembinaan SMK | 2008

Array Bahasa Pemrorgraman

a[6] = 63 a[7] = 24 a[8] = 67 a[9] =3

18 12 34 44 89 34 63 24 67 3 Data 12 ditemukan Data 89 dihapus Data 0 tidak terhapus <tidak ada>