Array adalah struktur data paling sederhana.
Sekelompok elemen yang memiliki nilai homogenya (tipe sama) dan tipe data
tertentu. Array memiliki elemen berupa data-data yang memiliki ukuran dan tipe
data sama Elemen data di array bisa diakses melalui posisinya (indeks) pada
array, Indeks dapat berupa integer maupun string (associative array). Array juga dapat dikatakan sebagai baris atau
deret.
Contoh Real : Baris / deretan
kamar pada suatu hotel
A. Fungsi Array
· Pengertian Fungsi ( function )
Function/fungsi adalah satu
blok kode yang melakukan tugas tertentu atau satu blok instruksi yang di
eksekusi ketika dipanggil dari bagian lain dalam suatu program.
· Tujuan pembuatan fungsi adalah
:
- Memudahkan dalam pembuatan
program.
- Menghemat ukuran program.
· Keuntungan memakai fungsi :
- Menguraikan tugas pemrograman
rumit menjadi langkah-langkah yang lebih sederhana atau kecil.
- Mengurangi duplikasi kode (kode
yang sama ditulis berulang-ulang) dalam program.
- Dapat menggunakan kode yang
ditulis dalam berbagai program yang berbeda.
- Memecah program besar menjadi
kecil sehingga dapat dikerjakan oleh programmer-programmer atau dipecah menjadi
beberapa tahap sehingga mempermudah pengerjaan dalam sebuah projek
- Menyembunyikan informasi dari
user sehingga mencegah adanya perbuatan iseng seperti memodifikasi atau
mengubah program yang kita buat
- Meningkatkan kemampuan
pelacakan kesalahan, jika terjadi suatu kesalahan kita tinggal mencari fungsi
yang bersangkutan saja dan tak perlu mencari kesalahan tersebut di seluruh
program.
B. Parameter
Terdapat dua macam para
parameter fungsi, yaitu :
- Parameter formal adalah
variabel yang ada pada daftar parameter dalam definisi fungsi.
- Parameter Aktual adalah
variabel yang dipakai dalam pemanggilan fungsi.
Bentuk penulisan Parameter
Formal dan Parameter Aktual.
· Passing by Value
- Call by value akan menyalin
nilai dari parameter aktual ke parameter formal.
- Yang dikirimkan ke fungsi
adalah nilai dari datanya, bukan alamat memori letak dari datanya.
- Fungsi yang menerima kiriman
nilai akan menyimpannya di alamat terpisah dari nilai aslinya yang
digunakan oleh bagian program yang memanggil fungsi.
- Perubahan nilai di fungsi
(parameter formal) tidak akan merubah nilai asli di bagian program yang
memanggilnya.
- Pengiriman parameter secara
nilai adalah pengiriman searah, yaitu dari bagian program yang memanggil fungsi
ke fungsi yang dipanggil.
- Pengiriman suatu nilai dapat
dilakukan untuk suatu ungkapan, tidak hanya untuk sebuah variabel, elemen array
atau konstanta saja.
· Passing by Reference
- Call by Referense merupakan
upaya untuk melewatkan alamat dari suatu variabel ke dalam
fungsi.
- Yang dikirimkan ke fungsi
adalah alamat letak dari nilai datanya, bukan nilai datanya.
- Fungsi yang menerima kiriman
alamat ini akan menggunakan alamat yang sama untuk mendapatkan nilai
datanya.
- Perubahan nilai di fungsi akan
merubah nilai asli di bagian program yang memanggil fungsi.
- Pengiriman parameter secara
referensi adalah pengiriman dua arah, yaitu dari fungsi pemanggil
ke fungsi yang dipanggil dan juga sebaliknya.
- Pengiriman secara acuan tidak
dapat bdilakukan untuk suatu ungkapan.
Array
juga dapat digunakan sebagai parameter. Jenisnya :
a. Array
dimensi satu sebagai parameter :
Pengiriman parameter berupa
array dimensi satu merupakan pengiriman secara acuan/referensi, karena yang
dikirimkan adalah alamat dari elemen pertama arraynya, bukan seluruh nilai-nilai
elemenya. Alamat elemen pertama dari array dapat ditunjukkan oleh nama lariknya
yang tidak ditulis dengan indeknya.
b. Array dua dimensi sebagai parameter :
Pengiriman parameter berupa
array dua dimensi hampir sama dengan pengiriman parameter array satu dimensi,
hanya saja perbedaannya adalah dalam array dua dimensi harus menyebutkan baris
dan kolom array dimensi dua tersebut, mendeklarasikan MAX_ROWS dan MAX_COLS
yang digunakan untuk pengiriman parameter array dua dimensi dan pada saat
pengiriman parameter formal array dua dimensi, kita harus menyebutkan banyaknya
dimensi array untuk kolom, sehingga ukuran kolom dapat diketahui, hal ini
berkaitan dengan pemesanan variabel array di memori.
C. Macam-macam Array
1. Array satu dimensi
2. Array dua dimensi
3. Array Multidimensi
1. Array satu dimensi
oSetiap elemen array dapat
diakses melalui index
oIndex array secara default dimulai dari 0
oDeklarasi array :
Tipe_array nama_array[ukuran]
Contoh codingan ARRAY 1 DIMENSI:
Hasil Compile and Run :
2. Array dua dimensi
-Array dua dimensi merupakan
array yang terdiri dari m buah baris dan n buah buah kolom bentuknya dapat
berupa matriks atau tabel.
-Deklarasi array :
Tipe_array nama_array [baris][kolom]
Contoh codingan ARRAY 2 DIMENSI:
Hasil Compile and Run :
3.Array multidimensi
-Array multidimensi merupakan
array yang mempunyai ukuran lebih dari dua. Bentuk pendeklarasian array
multidimensi sama saja dengan deklarasi array dimensi satu maupun dimensi dua.
-Deklarasi array :
Tipe_array nama_array [ukuran 1][ukuran 2] . .
. [ukuran N]
Perbedaan array dengan tipe data lain :
Array dapat mempunyai sejumlah nilai,
sedangkan tipe data lain hanya dihubungkan dengan sebuah nilai saja.
Array dapat digunakan untuk menyimpan beberapa
nilai tipe data lain data (char, int, float, double, long, dll) yang sama
dengan satu nama saja.
Selain itu, array dapat berupa satu dimensi
atau lebih, sedangkan tipe data lain hanya berupa satu dimensi.
Contoh codingan ARRAY MULTIDIMENSI:
Hasil Compile and Run :
C. String
String pada dasarnya adalah kumpulan dari karakter-karakter (karakter
bertipe data char). Penulisan string harus
diawali den diakhiri dengan tanda petik dua (“),
sedangkan karakter harus diawali dan diakhiri dengan tanda petik satu (‘). Misalnya :
Penulisan string :
string A = “gaji”;
Penulisan karakter :
char A = ‘g’;
char B = ‘a’;
char C = ‘j’;
char D = ‘i’;
char E = ‘\0’;
Kita dapat membangun sebuah string dengan menggunakan array dari beberapa karakter. Dalam bahasa
C++, string yang digunakan adalah bertipe null terminated string,
yaitu jenis string yang diakhiri
dengan oleh karakter null (‘\0’),
bukan nol. Oleh karena itu, jika kita ingin mendeklarasikan string dalam bentuk array dari char,
maka kita harus menambahkan 1 tempat untuk posisi karakter null. sebagai contoh misalnya kita ingin melakukan
deklarasi variabel yang bertipe string dan
mengisinya dengan teks “Baik”, maka
bentuk deklarasinya adalah sebagai berikut :
//Mendelklarasikan variabel tipe string dengan lebar 5
char sifat[5];
//Mengisi nilai ke dalam variabel sifat
sifat = {‘B’,’a’,’i’,’k’,’\0′};
Jika kita cermati, sebenarnya kita hanya mengisi 4 karakter kedalam
variable sifat, sedangkan sisa ruangnya
akan digunakan untuk menempatkan karakter null. Untuk
lebih jelasnya perhatikan gambar berikut.
Jika kita ingin mengisi nilai kedalam variabel string dalam bentuk
array char, maka kita perlu menambahkan karakter null di bagian elemen akhir
array. Berikut contoh kode program dengan bentuk array char.
#include <iostream> //
header
#include <conio.h>
using namespace std;