Anda di halaman 1dari 12

MODUL PERKULIAHAN

Praktikum Algoritma
dan Struktur Data
Menggunakan Array

Fakultas : Ilmu Komputer Tatap Muka Kode Mata Kuliah : W4119004

Program Studi : Teknik Informatika


10 Disusun Oleh : Chaerul Anhar Tanof, S.Kom,MMSI

Asbtrak Tujuan
Array atau larik merupakan sebuah variabel yang Mahasiswa mampu memahami konsep array
memiliki serangkaian elemen dari tipe data yang dan mampu menerapkannya pada program.
sama dan disimpan secara berurutan dalam memori
yang ditandai dengan memberikan indeks pada setiap
elemen nya. Pada sesi ini akan dibahas konsep dari
array, jenis array, dan cara penggunaan array yang
disertai dengan contoh program.
ARRAY

1. Definisi dan Konsep dari array

Pada C++ dan bahasa pemrograman lainnya terdapat konsep penyimpanan nilai dengan
menggunakan Array. Secara singkat dapat diartikan bahwa array merupakan kumpulan dari
variabel dengan tipe data yang sama yang disimpan secara berurutan ditandai dengan
memberikan indeks pada setiap elemen nya. Array digunakan untuk menyimpan sekumpulan data
atau variabel dengan tipe data yang sama. Misalkan di dalam sebuah program kita membutuhkan
variabel yang dapat menyimpan lima nilai tinggi badan yang berbeda, untuk melakukan hal
tersebut kita dapat membuat lima variabel berbeda misalnya; int t_badan1, t_badan2, t_badan3,
t_badan4, t_badan5; karena memiliki tipe data dan penggunana yang sama, maka kita dapat
menyatukannya kedalam satu variabel penyimpanan menggunakan array. Cukup dengan
menuliskan int t_badan[5]; dengan demikian dibentuk sebuah variabel yang dapat menyimpan
kelima nilai tersebut yang akan ditempatkan di dalam masing-masing indeks.
Konsep dari suatu array adalah menjadikan tumpukan data kedalam beberapa elemen yang
lokasinya berdekatan sehingga mampu menampung beberapa nilai yang berbeda asalkan tetap
dengan tipe data yang sama. Letak atau posisi dari elemen array ditunjukkan oleh suatu indeks.
Perhatikan ilustrasi pada gambar 7.1

0 1 2 3 4 Index array

Tinggi Badan[ ] 165 168 176 172 170

nama array
Elemen array

Gambar 7.1 Ilustrasi bentuk sebuah array

Pada gambar 7.1 , merupakan contoh sebuah array yang menampung lima nilai tinggi badan.
Kelima nilai data tersebut disimpan di dalam elemen array dengan diberikan indeks 0 – 5 sesuai
dengan urutan penginputan datanya.

2020 Praktirum Algoritma dan Struktur Data Pusat Bahan Ajar dan eLearning
2 Chaerul Anhar Tanof, S.Kom, MMSI http://www.undira.ac.id
1.1 Deklarasi dan membuat sebuah array

Seperti penggunaan variabel pada umumnya, array harus dideklarasikan terlebih dahulu
agar dapat dikenali oleh program. untuk mendirikan sebuah array sama seperti kita mendirikan
sebuah variabel biasa, yang membutuhkan tipe data, nama variabel diikuti dengan titik koma.
Lalu untuk merubah variabel biasa kedalam bentuk array adalah dengan menambahkan operator
subscript ( [ ] ) yang berisi jumlah indeks yang akan dimuat pada array tersebut. Berikut contoh
pernyataan untuk mendeklarasikan sebuah array :

int data_nilai[10];

Dari pernyataan tersebut, akan dibentuk sebuah array dengan tipe data integer yang
memiliki elemen sebanyak 10 indeks, artinya pada array tersebut kita dapat menyimpan sebanyak
10 nilai yang bertipe data integer di dalamnya. Pada pernyartaan tersebut, kita telah menyiapkan
sebuah aray kosong yang belum ada isinya. Saat mendeklarasikan array kita juga dapat langsung
mengisi elemen array dengan memberikan nilainya didalam tanda kurung kurawal

int data_nilai[5] = { 90, 80, 70, 72, 89 } ;

dengan pernyataan tersebut, elemen array akan berisi nilai sebagai berikut :

0 1 2 3 4

data_nilai[5] 90 80 70 72 89

Perlu diperhatikan, bahwa Indeks dari suatu array secara default dimulai dari 0, dan setiap
elemen yang kita pesan akan di nomori berdasarkan urutan dari 0 sampai sebanyak yang kita
pesan dan datanya akan diisi sesuai dengan urutan tersebut. Misalnya pada contoh lain, kita
membuat array grade[50], maka isi dari elemen array pertama akan berada pada urutan 0 dan
elemen terakhir berada di urutan 49, hal ini berlaku untuk pengisian data kedalam array tersebut.
Ketika kita mendeklarasikan sebuah variabel array tanpa ukuran array, maka ukuran dari variabel
array tersebut otomatis akan dihitung berdasarkan jumlah nilai pada proses inisialisasi.

2020 Praktirum Algoritma dan Struktur Data Pusat Bahan Ajar dan eLearning
3 Chaerul Anhar Tanof, S.Kom, MMSI http://www.undira.ac.id
1.2 Mengisi nilai kedalam array

Untuk memberikan nilai pada suatu aray, kita dapat memasukkan nilai satu persatu pada
masing-masing elemen atau dengan memasukkan dengan cara bersamaan, atau bisa juga dengan
menggunakan metode perulangan. Untuk memasukkan satu-persatu pada masing-masing elemen
dapat dilakukan sebagaimana contoh pada program berikut :

#include <iostream>
using namespace std;
int main(){
// membuat array kosong dengan jumlah elemen 5
int data_nilai[5];
// memasukan nilai ke masing-masing elemen array
data_nilai[0] = 32;
data_nilai[1] = 42;
data_nilai[2] = 76;
data_nilai[3] = 31;
data_nilai[4] = 57;

// mencetak isi array


cout << "Nilai ke-1: " << nilai[0] << endl;
cout << "Nilai ke-2: " << nilai[1] << endl;
cout << "Nilai ke-3: " << nilai[2] << endl;
cout << "Nilai ke-4: " << nilai[3] << endl;
cout << "Nilai ke-5: " << nilai[4] << endl;

return 0;
}

Adapun untuk memasukkan nilai secara bersamaan kedalam suatu array, kita dapat lasung
memasukannya dengan memberikan nilainya didalam tanda kurung kurawal.

#include <iostream>
using namespace std;

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

// menampilkan elemen array


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

return 0;
}

Cara ini dapat dilakukan jika kita telah mengetahui nilai yang akan dimasukkan secara pasti.

2020 Praktirum Algoritma dan Struktur Data Pusat Bahan Ajar dan eLearning
4 Chaerul Anhar Tanof, S.Kom, MMSI http://www.undira.ac.id
Lalu bagaimana jika data inputnya lebih dari 10 atau bahkan lebih dari 100, maka akan
sangat banyak sintaks yang diperkukan untuk menginput nilai kedalam array. Untuk itu, kita
dapat memanfaatkan metode perulangan (looping). Dengan cara ini kita dapat memasukan satu
baris perintah saja di dalam blok perulangan untuk menginput nilai kedalam array, sehingga
program dapat menerima input nilai secara berulang-ulang. Perhatikan contoh program berikut :

#include <iostream>
using namespace std;

int main(){
//deklarasi array
int nilai[5];

// mengisi array dengan cara loop,


// diketahui jumlah elemen array = 5 , maka kita melakukan looping 5x untuk input nilai
for(int i; i < 5; i++){

cout << "masukan nilai data ke - " << i << " = ";
cin >> nilai[i]; //indeks array diganti dengan nilai 1
}

cout << "------ HASIL INPUT -------" << endl;

// memanggil hasil input array


for(int y = 0; y < 5; y++){
cout << "nilai data ke-" << y << " adalah " << nilai[y] << endl ;
}

return 0;
}

1.3 Mengakses nilai dalam suatu array

Setelah mendeklarasikan dan memberikan nilai pada suatu array, kita dapat mengakses nilai
dari suatu elemen dalam array dengan memanggil nama array diikuti dengan index dari elemen
yang ingin kita panggil. Seperti yang telah di contohkan pada script sebelumnya, misalnya kita
ingin mengakses nilai dari elemen ketiga dalam array huruf[5] = {'a', 'b', 'c', 'd', 'e'};
Maka kita dapat memanggilnya dengan sintaks : huruf[2].

2020 Praktirum Algoritma dan Struktur Data Pusat Bahan Ajar dan eLearning
5 Chaerul Anhar Tanof, S.Kom, MMSI http://www.undira.ac.id
Pada kasus tersebut mengapa elemen yang dipangil 2 bukan 3? Perlu diingat bahwa
indeks selalu dimulai dengan 0, Maka untuk mengurutkannya dimulai dari 0 bukan dari 1.
Array selalu menggunakan bilangan cacah (bilangan dimulai dari 0). Dan setiap elemen yang kita
pesan akan di nomori berdasarkan urutan dari 0 sampai sebanyak yang kita pesan. Misalnya kita
memesan grade[50] maka elemen pertama berada pada urutan nomer 0 dan elemen terakhir
berada pada urutan 49. Perhatikan contoh berikut :

#include <iostream>
using namespace std;

int main ()
{
char grade[3]={};

grade[0] = 'a';
grade[1] = 'b';
grade[2] = 'c';

cout<<"0 : "<<grade[0]<<endl;
cout<<"1 : "<<grade[1]<<endl;
cout<<"2 : "<<grade[2]<<endl;

return 0;
}

Hati-hati dalam mengakses array, dalam pemrograman C++ kita dimungkinkan untuk
mengakses elemen dari array yang bukan anggota dari array tersebut. Misalnya kita mencoba
akses index ke 50, padahal array itu sendiri hanya terdiri dari 10 elemen. Kita tetap dimungkinkan
untuk mengakses index dari array meskipun bukan merupakan anggota dari variabel array
tersebut. Hal ini dapat dilakukan tapi dilarang, karena apa yang coba kita akses bukan merupakan
memori milik program kita. Bisa saja memori tersebut dimiliki oleh program lain.
Selain memanggil array secara langsung, kita juga dapat memanfaatkan perulangan untuk
menampilkan seluruh nilai dari elemen array, sebagaimana potongan script berikut :

for(int y = 0; y < 5; y++){


cout << "nilai data ke-" << y << " adalah " << nilai[y] << endl ;
}

2020 Praktirum Algoritma dan Struktur Data Pusat Bahan Ajar dan eLearning
6 Chaerul Anhar Tanof, S.Kom, MMSI http://www.undira.ac.id
2. Array Multi Dimensi

Array yang kita bahas pada bagian sebelumnya adalah bentuk array satu dimensi. Di
dalam konsep Array, kita bisa membuat array menjadi dua dimensi bahkan lebih. Array
multidimensi merupakan array yang memiliki lebih dari satu indeks. Indeks pada array
merepresentasikan dimensi dari array. Sebagai contoh array yang memiliki dua indeks, maka
dapat dikatakan bahwa array tersebut merupakan array dua dimensi dan begitu juga untuk jumlah
indeks, semakin banyak dimensi indeks dari suatu array, maka semakin besar dimenssi dan
cakupan penyimpanan nilainnya, juga semakin besar memoti yang dibutuhkan.

2.1 Array dua dimensi

Array dua dimensi merupakan array yang terdiri dari m buah baris dan n buah kolom.
Bentuknya dapat berupa matriks atau tabel, digunakan untuk berbagai keperluan, misalnya dalam
membentuk sebuah tabel, matrik dan sebagainya. Bentuk dari array dua dimensi adalah

tipe_data nama_array[indeks1][indeks1.1];
contohnya :
char datasiswa[x][x1];

Perhatikan contoh bentuk data pada tabel 7.1


Tabel 7.1 Contoh data array dua dimensi

No Program studi 1992 1993 1994 1995


1 Diknik Elektro 35 45 80 120
2 Diknik Mekatronik 110 110 70 101
3 Diknik elektro D3 10 15 20 17

Dari tabel diatas dapat dituangkan ke dalam array dua dimensi dengan pendeklrasian array sbb:

int data_lulus[3][4]

2020 Praktirum Algoritma dan Struktur Data Pusat Bahan Ajar dan eLearning
7 Chaerul Anhar Tanof, S.Kom, MMSI http://www.undira.ac.id
Pada definisian array tersebut, dapat diketahui bahwa :
• Angka 3 menyatakan jumlah baris (mewakili program studi)
• Angka 4 menyatakan jumlah kolom (mewakili tahun kelulusan)

Gambaran terhadap array tersebut dilihat pada gambar 7.2

Gambar 7.2 Contoh bentuk array dimensi 2

Sama halnya dengan array satu dimensi, data pada array dua dimensi ditempatkan secara
beruturan dalam memori. perhatikan gambar 7.3 untuk penggambaran lebih jelas mengenai
penenpatan elemen dalam array dua dimensi.

Gambar 7.3 Posisi elemen data pada array dua dimensi

2020 Praktirum Algoritma dan Struktur Data Pusat Bahan Ajar dan eLearning
8 Chaerul Anhar Tanof, S.Kom, MMSI http://www.undira.ac.id
Untuk mengakses nilai pada array dua dimensi adalah dengan menyebutkan nama array
diikuti dengan indeks kolom dan indeks barisnya. Misalnya pada contoh di gambar 7.3 kita
mengakses array data_lulus[1][3], maka akan diperoleh nilai 70. Dimana indeks ke [1]
merupakan baris dan indeks [3] merupakan kolom. Sehigga jika dilihat pada tabel 7.1 maka baris
dengan indeks baris [1] yakni program studi Diknik Mekatronik dan indeks kolom ke [3] dari
baris tersebut (tahun 1994) diperoleh data 70.

2.2 Array multi dimensi

Array multi-dimensi merupakan array yang mempunyai ukuran lebih dari dua dimensi.
Bentuk pendeklarasian array sama saja dengan array satu dimensi maupun array dua dimensi.
Bentuk umum pendefinisian array tiga dimensi :

tipe_data nama_array[indeks1][indeks1.1][indeks1.1.1];
contohnya :
int huruf[2][8][8];

Gambaran array dengan tiga berdimensi adalah sebagaimana pada gambar 7.4

Gambar 7.3 Gambaran array 3 dimensi

2020 Praktirum Algoritma dan Struktur Data Pusat Bahan Ajar dan eLearning
9 Chaerul Anhar Tanof, S.Kom, MMSI http://www.undira.ac.id
3. Contoh program memanfaatkan Array

Berikut adalah beberapa contoh program yang memanfaatkan penggunaan array

#include <conio.h>
#include <iostream>
#include <string>
using namespace std;
int main()
{
int n;
string nama[10],status[10];
int nilai[10];

cout<<"Masukan Jumlah Data = ";


cin>>n;
cout<<endl;

for (int i=0; i<n; i++) {


cout<<endl;

cout<<"Data ke-"<<i+1<<endl;
cout<<"Masukan Nama = ";
cin>>nama[i];
cout<<"Masukan Nilai = ";
cin>>nilai[i];

if (nilai[i]<=50) {
status[i]="Tidak Lulus";
} else {
status[i]="Lulus";
}
}
cout<<endl;
cout<<"DAFTAR NILAI MAHASISWA"<<endl;
cout<<"-------------------------------------------"<<endl;
cout<<"No Nama Nilai Status "<<endl;
cout<<"-------------------------------------------"<<endl;

for (int i=0; i<n;i++) {


cout<<i+1<<" "<<nama[i]<<" "<<nilai[i]<<" "<<status[i]<<endl;
cout<<"-------------------------------------------"<<endl;
}

getch();
}

program diatas merupakan implementasi penggunaan array. Terdapat array seperti nama dan
status dengan tipe string dan nilai dengan tipe integer. Masing-masing berisi 10 elemen,
kemudian user akan memasukan nama dan nilai, yang akan dilakukan perulangan berdasarkan
jumlah data yang akan diinput. Jika nilai yang dimasukan kurang dari 50 maka status mahasiswa
tersebut tidak lulus.

2020 Praktirum Algoritma dan Struktur Data Pusat Bahan Ajar dan eLearning
10 Chaerul Anhar Tanof, S.Kom, MMSI http://www.undira.ac.id
Program akan menampilkan data mahasiswa tersebut dan juga status kelulusannya.

Contoh kedua, merupakan contoh sederhana array 2 dimensi :

#include <iostream>
using namespace std;

int x,y;
int tabel[3][5] = {
{1, 2, 3, 4, 5},
{2, 4, 6, 8, 10},
{3, 6, 9, 12, 15}
};

int main ()
{
for (x=0; x<3; x++)
for (y=0; y<5; y++)
{
cout << tabel[x][y] << " ";
}
cout << "\n";
}

Dalam program diatas kita mendeklarasikan variabel x dan y sebagai iterator. Lalu kita
mendeklarasikan varibel tabel dengan tipe array dua dimensi (jumlah baris = 3, jumlah kolom =
5). Selain itu, kita langsung melakukan inisialisasi pada array tersebut. Kemudian dalam program
utama kita menggunakan nested loop dengan fungsi for untuk mengakses baris dan kolom secara
otomatis supaya dapat mencetak isi array tabel.

2020 Praktirum Algoritma dan Struktur Data Pusat Bahan Ajar dan eLearning
11 Chaerul Anhar Tanof, S.Kom, MMSI http://www.undira.ac.id
DAFTAR PUSTAKA
1. FourtMark Allen Weiss, Fourth Edition Data Structures and Algorithm Analysis in C++, Pearson, 2014.
2. Kjell Backman, Structured Programmming with c++, 2012.
3. Budi R, Pemrograman C++, Informatika, Bandung, 2010.
4. Sjukani M, Algoritma: Algoritma dan Struktur Data 1 dengan C, C++ dan Java Edisi 6. Jakarta, Mitra
Wacana Med, 2010.
5. Ahmad M, Menggunakan Array untuk Menyimpan Banyak Data, https://www.petanikode.com/cpp-
array/ Diakses 03 Mei 2020 jam 15.10

6. https://www.w3schools.com/cpp/cpp_arrays.asp Diakses 03 Mei 2020 jam 15.25

2020 Praktirum Algoritma dan Struktur Data Pusat Bahan Ajar dan eLearning
12 Chaerul Anhar Tanof, S.Kom, MMSI http://www.undira.ac.id

Anda mungkin juga menyukai