MODUL IV
ARRAY
A. Tujuan
1. Mahasiswa dapat memahami definisi dan konsep array.
2. Memahami kegunaan array dalam pemrograman C++ dan C
3. Mahasiswa dapat mengetahui bagaimana mengimplementasikan array dalam
program.
B. Dasar Teori
B.1 Pengertian Array
Array atau larik adalah tipe terstruktur yang terdiri dari sejumlah
komponen-komponen yang mempunyai tipe yang sama. Menurut definisinya,
array adalah sebuah variabel yang dapat menyimpan lebih dari satu nilai sejenis
dengan memiliki tipe data yang sama. Suatu array mempunyai jumlah
komponen yang banyaknya tetap. Banyaknya komponen dalam suatu array
ditunjukan oleh suatu indeks yang disebut tipe indeks.
Array merupakan struktur data yang diproses menurut indeksnya. Array
terdiri dari array satu dimensi (array linier), dua dimensi (matriks) dan multi-
dimensi. Array dapat bertipe data sederhana (byte, word, integer, real, boolean,
char atau string) dan tipe data scalar. Tipe array ini artinya isi dari array atau
komponen-komponennya atau elemen-elemennya mempunyai nilai dengan tipe
data tersebut. (Nelli Hindriani, 2017: 147 – 148)
Setiap identifier yang akan digunakan harus dipesan dahulu dalam
kamus/deklarasi beserta tipe data yang akan ditampungnya. Demikian pula
dengan tipe data array beserta tipe elemen-elemen yang akan ditampungnya
harus pula dipesan dalam kamus/deklarasi. Jika kita memesan variabel biasa
(tipe data sederhana dan string), maka kita hanya menentukan tipenya, namun
jika memesan array, maka harus pula ditentukan banyaknya elemen (misal dari
1..100). Variabel array dideklarasikan dengan mencantumkan tipe dan nama
variable yang diikuti dengan banyaknya lokasi memori yang ingin dibuat.
(Charibaldi, N, 2018).
Contoh :
Dalam Algoritma :
C++ secara otomatis akan menyediakan lokasi memori sesuai dengan yang
dideklarasikan, dimana nomor indeks selalu dimulai dari 0.
Nilai suatu variabel array dapat juga diinisialisasi secara langsung seperti yang
terdapat di dalam tanda kurung kurawal pada saat deklarasi di atas.
int x[5] = {0};
tipe_data : menyatakan jenis tipe data element larik (int, char, float, dan
lain-lain).
Contoh :
Int nilai[6];
2) Inisialisasi
Menginisialisasi array sama dengan memberikan nilai awal array pada
saat didefinisikan.
nama_var_array [indeks];
C++ secara otomatis akan menyediakan lokasi memori sesuai dengan yang
dideklarasikan, dimana nomor indeks selalu dimulai dari 0.
int c[5] = {-12, 0, 20, 85, 1551};
Nilai suatu variabel array dapat juga diinisialisasi secara langsung seperti yang
terdapat di dalam tanda kurung kurawal {} pada saat deklarasi di atas.
int x[5] = {0};
Deklarasi variable array sekaligus mengisi setiap lokasi memorinya dengan nilai
0. Tipe data yang akan ditampung array bisa sembarang tipe data misal Integer,
Boolean, Char, Real, String bahkan yang terstruktur seperti Set, Record atau
array lagi. (Wilis Kaswidjanti, 2017:3-4).
1. Array Berdimensi Satu
Array Berdimensi Satu merupakan sekumpulan item data yang
disusun secara baik menjadi suatu rangkaian dan diacu atau ditunjuk oleh satu
identifier. Contoh : Nilai = (56 42 89 65 48).
Item data individual dalam array bisa ditunjuk secara terpisah dengan
menyatakan posisinya dalam array itu. Misalnya Nilai (1) menunjuk ke 56,
Nilai (2) menunjuk ke 42, dan seterusnya. Bilangan yang di tulis dalam tanda
kurung menandakan posisi item individual dalam array (disebut juga
subscript/indeks). Variabel bisa digunakan sebagai subscript, misalnya
Nilai(i). Jika I = 2 maka menunjuk ke Nilai (2) yaitu 42. Jika I = 4 maka
menunjuk ke Nilai (4) yaitu 65. Sedangkan item data individual dalam suatu
array sering disebut elemen.
Contoh programnya :
#include <iostream.h>
#include <conio.h>
void main () {
int i;
float suhu [5]; //array dengan 5 elemen bertipe float
clrscr (); //membaca dari keyboard dan meletakkan ke array
cout <<<< i+1<> suhu [i]; } //menampilkan isi array ke layar
cout <<< endl;
for (i=0; i<<suhu[i]<endl;
}
Pada gambar di atas, kolom adalah {2 dan 5} {4 dan -7} {10 dan 9}
{12 dan 20 } dan baris adalah { 2,4 ,10, 12 } dan { 5, -7, 9, 20}. (Johnson
Sihombing, 2019, : 16-17).
a1 +a 2+ …+an n
Rata-rata = =∑ ai
n i
Contoh program :
#include <iostream>
#include <conio.h>
using namespace std;
int main() {
int data_lulus[3][4];
int tahun, prodi;
while (true) {
cout << "Program Studi (1=PTE, 2=PTM, 3=TE): ";
3. Array Multi-Dimensi
Array multi-dimensi merupakan array yang mempunyai ukuran lebih
dari dua. Bentuk pendeklarasian array sama saja dengan array dimensi satu
maupun array dimensi dua.
Bentuk umum pendefinisian array berdimensi tiga :
Tipe nama_array[indeks1][indeks2][indeks3];
Contoh Program :
#include <iostream>
int main(){
cout<<"\t===============================";
cout<<"\n\t== Contoh Array Tiga Dimensi ==\n";
cout<<"\t===============================\n\n";
cout<<"\n\n===============================\n";
cout<<"== Tampil nilai elemen Array ==\n";
cout<<"===============================\n";
return 0;
}
Array Statis dapat didefinisikan sebagai sebuah array yang ukurannya tidak
berubah sejak deklarasi. Seadangkan array dinamis adalah array yang ukurannya
bisa berubah sejak deklarasi. Berikut beberapa perbedaan array statis dan
Dinamis.
1. Array Statis
Array statis menempati stack, yang merupakan salah satu bagian yang
digunakan untuk menyimpan data atau variabel dengan alamat memorinya
sudah ditentukan saat kompilasi. Jumlah elemen yang disimpan pada array
statik tidak dapat diubah setelah deklarasi. Contoh pendeklarasian: int arr[]
= {1, 2, 3};
2. Array Dinamis
Array dinamis menempati heap, yang merupakan area memori yang
digunakan untuk alokasi secara dinamis. Heap dialokasikan saat runtime
untuk menyediakan memori tambahan yang tidak dialokasikan saat kompilasi.
Jumlah elemen yang disimpan pada array dinamis dapat diubah. Contoh
pendeklarasian : int* arr = new int[3];
C. Studi kasus
Program mencari nilai maksimum dan minimum
D. Hasil
D.1 Flowchart
D. Script Program
1. Script Program Bahasa C++
#include <iostream>
int main() {
int n, i;
int maksimum, minimum;
int arr[n];
maksimum = arr[0];
minimum = arr[0];
return 0;
}
int main() {
int n, i;
int arr[n];
int maksimum = arr[0];
int minimum = arr[0];
return 0;
}
E. AnalisaProgram
1. Analisa Program Bahasa C++
#include <iostream>
usingnamespacestd;
Dari script diatas usingnamespacestd; digunakan untuk
mengelompokan seluruh fungsi, tipe data dan objek standar tanpa harus
menuliskan std: di depannya setiap kali digunakan.
int main()
{
// isi program
}
Dari script diatas dapat diketahui bahwa Fungsi int main()
merupakan fungsi utama pada program C++. Setiap program C++ wajib
memiliki fungsi utama sebagai titik awal eksekusi program.Program tersebut
dapat berupa serangkaian instruksi, deklarasi variabel, operasi matematika,
pengolahan data, dan tampilan output pada layar.
int n, i;
int maksimum, minimum;
Pada script di atas, terdapat deklarasi beberapa variabel yaitu n, i,
maksimum, dan minimum. Variabel n digunakan untuk menyimpan jumlah
elemen dalam array, variabel i digunakan sebagai variabel iterasi dalam
perulangan, variabel maksimum digunakan untuk menyimpan nilai maksimum,
dan variabel minimum digunakan untuk menyimpan nilai minimum.
dan sintaks cin digunakan untuk memasukan data dari keyboard dan disimpan
pada variabel n.
int arr[n];
Pada script di atas, terdapat deklarasi array arr dengan ukuran n yang
didapat dari menginput data secara dinamis sebelumnya.
Pada script di atas, setelah proses mencari nilai maksimum (maksimum) dan
nilai minimum (minimum) dalam array arr selesai, nilai-nilai tersebut akan
ditampilkan menggunakan sintaks cout. Baris pertama cout akan menampilkan
teks "Nilai maksimum: " diikuti oleh nilai maksimum. Ini dilakukan dengan
menggunakan operator `<<` untuk menggabungkan teks dan nilai maksimum ke
dalam satu output. Baris yang sama berlaku untuk baris kedua, di mana "Nilai
minimum: " diikuti oleh nilai minimum akan ditampilkan.
return 0;
}
Pada script diatas, terdapat deklarasi dua variabel n dan i bertipe int.
Variabel n digunakan untuk menyimpan jumlah elemen array yang akan
dimasukkan oleh pengguna, sedangkan variabel i digunakan sebagai variabel
iterasi dalam perulangan.
printf("Masukkan jumlah elemen: ");
scanf("%d", &n);
Pada script diatas, terdapat deklarasi array arr dengan ukuran n, serta
deklarasi variabel maksimum dan minimum yang diinisialisasi dengan nilai
elemen pertama dari array arr. Dalam script tersebut, int arr[n] digunakan
untuk mendeklarasikan array arrdengan ukuran n. Hal ini memungkinkan kita
untuk menyimpan n elemen dalam array tersebut. Ukuran array ditentukan oleh
nilai yang tersimpan dalam variabel n, yang sebelumnya telah dimasukkan oleh
pengguna.
Selanjutnya, int maksimum = arr[0]; digunakan untuk
mendeklarasikan variabel maksimum dan menginisialisasinya dengan nilai
elemen pertama dari array arr.Dalam hal ini, elemen pertama array arr
diakses menggunakan indeks [0]. Dengan melakukan inisialisasi ini, nilai awal
dari maksimum akan sama dengan nilai elemen pertama array. Sama halnya, int
minimum = arr[0]; digunakan untuk mendeklarasikan variabel minimum dan
menginisialisasinya dengan nilai elemen pertama dari array arr.Dengan
demikian, nilai awal minimum juga akan sama dengan nilai elemen pertama
array.
printf("Masukkan elemen-elemen array:\n");
for (i = 0; i < n; i++) {
scanf("%d", &arr[i]);
}
Pada script diatas, terdapat sintaks `printf` yang digunakan untuk
mencetak pesan "Masukkan elemen-elemen array:" di layar. Pesan tersebut
memberikan instruksi kepada pengguna untuk memasukkan nilai-nilai elemen
array. Kemudian, terdapat looping for yang digunakan untuk membaca nilai-
nilai elemen array dari input pengguna menggunakan sintaks `scanf`.
Pada setiap looping, `scanf` digunakan untuk membaca input dari
pengguna dalam bentuk integer menggunakan format specifier %d. Dalam
perulangan ini, variabel i digunakan sebagai variabel iterasi untuk mengakses
indeks array. Pada setiap perulangan, nilai yang dibaca dari input pengguna akan
disimpan ke dalam elemen array arr[i] menggunakan operator `&` untuk
mendapatkan alamat dari elemen array tersebut. Proses looping akan berlangsung
sebanyak n kali, sesuai dengan ukuran array yang telah ditentukan sebelumnya.
Setiap elemen array akan diisi dengan nilai yang dimasukkan oleh pengguna.
Dengan menggunakan sintaks `printf` dan `scanf` di atas, program
memungkinkan pengguna untuk memasukkan nilai-nilai elemen array sesuai
dengan jumlah elemen yang telah ditentukan sebelumnya.
for (i = 1; i < n; i++) {
if (arr[i] > maksimum) {
maksimum = arr[i];
F. Kesimpulan
1. Tipe data array adalah tipe data terstruktur yang merujuk kepada sebuah atau
sekumpulan elemen yang mempunyai tipe data yang sama melalui indeks.
Dengan kata lain Array adalah himpunan elemen (variable) dengan tipe yang
sama dan disimpan secara berurutan dalam memory yang ditandai dengan
memberikan index pada suatu nama variable.
2. Array merupakan struktur data yang sering digunakan dalam pemrograman
untuk menyimpan data yang akan diolah atau diproses seperti proses sorting.
Pada bahasa C++ untuk melakukan sebuah deklarasi array menggunakan
tanda [….]. Elemen array sendiri dapat diakses melalui indeks yang terdapat
didalamnya, namun indeks array pada C++ selalu dari 0 bukan dari 1. Karena
0 sebagai awalan dari index atas sebuah larik pada dasarnya lebih logis
dibanding angka 1. Hal ini disebabkan karena mekanisme pengalamatan
memori komputer menunjuk langsung pada data, sehingga data pada indeks
selanjutnya secara lebih sederhana oleh kompiler.
3. Mengimplentasikan array dalam sebuah program dapat memecahkan banyak
persoalan, seperti pada studi kasus mencari nilai maksimum dan minimum,
dimana array diimplementasi untuk menyimpan sekumpulan data yang
mempunyai tipe sama. Contohnya int minimum = arr[0]; int maksimum
= arr[0]; int arr[n]; seperti pada tipe data int tersebut merupakan
deklarasi array yang menyimpan data-data dari variabel n, maksimum dan
minimum.
DAFTAR PUSTAKA