. ………………………………………………………………
NPM.
I. JUDUL PERCOBAAN
ARRAY
Array adalah suatu struktur yang terdiri dari sejumlah elemen yang memiliki tipe data
yang sama. Elemen-elemen array tersusun secara sekuensial dalam memori komputer.
Semua elemem array bertipe sama. Array cocok untuk organisasi kumpulan data
homogen yang ukuran atau jumlah elemen maksimumnya telah diketahui dari awal.
Homogen adalah bahwa setiap elemen dari sebuah array tertentu haruslah mempunyai
tipe data yang sama.
Struktur Data memberikan penjelasan tentang suatu koleksi atau kelompok data yang
dapat dikarakteristikan oleh organisasi serta operasi yang didefinisikan terhadapnya.
Pemakaian struktur data yang tepat didalam proses pemrograman,akan menghasilkan
algoritma yang kebih jelas dan tepat sehingga menjadikan program secara keseluruhan
lebih sederhana.
Didalam sruktur data ini ada struktur data sederhana, salah satunya adalah array. Array
bisa juga disebut sebagai salah satu program yang terlahir dari dunia tekhnologi lewat
pola pikir manusia yang bermanfaat untuk menyelesaikan suatu penghitungan.
Array dapat berupa larik satu dimensi ataupun lebih dari satu dimensi. Matriks
merupakan contoh larik yang memiliki dimensi lebih dari satu. Struktur penyimpanan
matriks di dalam memori utama yang setiap individu elemennya diakses dengan
menggunakan dua buah indeks (yang biasanya dikonotasikan dengan baris dan kolom).
Karena matriks sebenarnya adalah larik, konsep umum dari larik juga berlaku untuk
matriks, yaitu:
Kumpulan elemen yang bertipe sama, dapat dapat berupa tipe dasar (integer, real,
boolean, char, dan string), atau tipe terstruktur seperti
record. Setiap elemen data dapat diakses secara langsung jika indeksnya (baris dan
kolom) diketahui.
• Merupakan struktur data yang statik, artinya jumlah elemennya sudah dideklarasikan
terlebih dahulu di dalam bagian DEKLARASI dan tidak bisa diubah selama
pelaksanaan program elemen matriks diakses melalui indeks baris dan indeks
kolomnya. Jika indeks baris dinyatakan dengan i dan indeks kolom dinyatakan dengan
], maka notasi algoritmik untuk mengakses elemen pada baris i dan kolom jadalah
nama_matriks[i,j].
• Karakteristik Array
Bentuk umum;
tipeData NamaArray [JumlahElemen] = {<Inisialisasi>}; int Bola [10]= {17, 21, 33, dst);
Contoh:
bool Hadir [5] = (true, true, false, false);//pemberian nilai array pada inisialisasi
Pendeklarasian array diawali dengan penyebutan tipe data diikuti nama variabel array, diikuti
jumlah elemen. Jika array hendak diberi nilai awal, nilai-nilai awal dituliskan dalam
inisialisasi. Jika inisialisasi kurang dari jumlah elemen array, sisanya akan diinisialisasikan
dengan nol. Elemen array diakses dengan menyebutkan indeks posisi elemen tersebut dalam
array. Elemen pertama array memiliki indeks 0.
Contoh array
int data[4][3];
char dft[5][20];
float x[100][200];
Pendeklarasian array diawali dengan penyebutan tipe data diikuti nama variabel array,
diikuti jumlah elemen. Jika array hendak diberi nilai awal, nilai-nilai awal dituliskan
dalam inisialisasi. Jika inisialisasi kurang dari jumlah elemen array, sisanya akan
diinisialisasikan dengan nol. Elemen array diakses dengan menyebutkan indeks posisi
elemen tersebut dalam array. Elemen pertama array memiliki indeks 0.
IV. PROSEDUR PERCOBAAN
Pada Gambar 5.1.1.a Source Code Percobaan 1-1 tersebut membuat program array 1
dimensi menggunakan c++. Pada baris 1 terdapat header #include <Iostream> yang
berfungsi untuk untuk menerima atupun meberi input atau output (cin dan cout),Pada
baris ke 2 terdapat using namespace std yang berfungsi untuk agar ketika membuat
perintah tidak perlu menambahkan std:: pada awal baris pada baris ke 4 terdapat int
yang berfungsi untuk mengembalikan nilai 0 setelah di eksekusi, pada baris ke 6 di
deklarasikan array satu dimensi yang memiliki 8 indeks dengan bertipe integer,pada
baris ke 7 terdapat fungsi cout yang akan menginputkan variabel &a yang akan di
tampilkan pada output dan fungsi endl tanda mengakhiri sebuah baris, pada baris ke 8
terdapat fungsi perulangan for dengan deklarasi i=0 dengan syarat i<8 dengan di ikuti
increment i i++ ,pada baris ke 9 terdapat fungsi cout dengan nilai &a[i] yang akan di
tampilkan pada halaman output kemudian endl yang berfungsi untuk mengakhiri baris
kemudian di baris 11 terdapat return 0 yang berfungsi untuk mengakhiri sebuah
program dan mengembalikannya ke pada main ( )
5.1.1.b Output Percobaan 1-1 Array IntAdress
Berdasarkan Gambar 5.1.1.b Output Percobaan 1-1 Array IntAdress dapat di lihiat
bahwa output pada gambar di atas di dapat dari fungsi cout pada baris ke 7 yang
mana fungsi cout akn mencetak alamat memori dari array a, berdasarkan dari
perulangan source code pada baris ke 8 merupakan hasil output dari perintah
perulangan for dan perintah cout yang akan mencetak alamat memori dari setiap
elemen array a.
5.1.2 Percobaan 1-2 Array CharAdrres
5.1.2.a Source Code Percobaan 1-2 Array CharAddress
Berdasarkan Gambar 5,1,2,a source code percobaan 1-2 ArrayAdress merupakan array satu
dimensi yang bertipe data char. Pada baris 1 terdapat header #include <Iostream> yang
berfungsi untuk untuk menerima atupun meberi input atau output (cin dan cout),Pada
baris ke 2 terdapat using namespace std yang berfungsi untuk agar ketika membuat
perintah tidak perlu menambahkan std:: pada awal baris pada baris ke 4 terdapat int
yang berfungsi untuk mengembalikan nilai 0 setelah di eksekusi,pada baris ke 5
terdapat tipe data char yang menggunakan variabl a dengan indeks 8.kemudian pada
baris ke 7 terdapat fungsi cout yang akan menginputkan variabel &a yang akan di
tampilkan pada output dan fungsi endl tanda mengakhiri sebuah baris, pada baris ke 8
terdapat fungsi perulangan for dengan deklarasi i=0 dengan syarat i<8 dengan di ikuti
increment i i++ ,pada baris ke 9 terdapat fungsi cout dengan nilai &a[i] yang akan di
tampilkan pada halaman output kemudian endl yang berfungsi untuk mengakhiri
baris,kemudian di baris 11 terdapat return 0 yang berfungsi untuk mengakhiri sebuah
program dan mengembalikannya ke pada main ( ).
5.1.2.b Output Percobaan 1-2: Array CharAddress
Berdasarkan gambar 5.1.2.b output percobaan 1-2 Array CharAdress dapat di lihat
bahwa output tersebut di dapatkan dari hasil source code pada Array CharAdress di
baris ke 6 hingga baris ke 9,dan menampilkan 1 baris array hasil ini di dapatkan karena
fungsi char yang di gunakan untuk menampung 1 digit karakter,kemudian cout
menampilkan masukan pointer a,kemudian di ikuti perulangan for dengan inisiasi
variabel dan nilai (int i=0; i<8; i++) untuk memory dari setiap elemen array.
5.1.3 Percobaan 1-3 Array Input Output
Pada Gambar 5.1.3.b Source Code Percobaan 1-3 Array InputOutput . Pada baris 1
terdapat header #include <Iostream> yang berfungsi untuk untuk menerima atupun
meberi input atau output (cin dan cout),Pada baris ke 2 terdapat using namespace std
yang berfungsi untuk agar ketika membuat perintah tidak perlu menambahkan std::
pada awal baris pada baris ke 4 terdapat int yang berfungsi untuk mengembalikan nilai
0 setelah di eksekusi, , pada baris ke 6 terdapat tipe data integer menggunakan variabel
a dengan indeks 8,pada baris ke 9 terdapat fungsi perulangan for dengan deklarasi i=0
dengan syarat i<8 dengan di ikuti increment i i++ ,pada baris ke 10 terdapat fungsi
cout dengan nilai &a[i] yang akan di tampilkan pada halaman output pada baris ke 14
dan 15 sama dengan baris 9 dan 10 ,pada baris ke 15 terdapat endl yang berfungsi untuk
mengakhiri baris,kemudian return 0 yang berfungsi untuk mengakhiri sebuah program
dan mengembalikannya kepada main.
5.1.3.b Output Percobaan 1-3 Array Input Output
Berdasarkan Pada gambar 5.1.3.b Output Percobaan 1-3 Array InputOutput dapat kita
lihat bahwa terdapat nilai yang telah di masukkan oleh user,yaitu nilai sebanyak 8 baris
output1,2,3,4,5,6,7,8 yang di inputkan oleh user ini juga merupakan perintah cout atau
hasil output dari setiap nilai array yang di inputkan oleh user,output ini di dapat dari
source code pada baris ke 6 yang mana fungsi int ini untuk tipe bilangan bulat.
5.1.4 Percobaan 1: Character Array
5.1.4.a. Source Code Percobaan 1 – 4 Array Character
Berdasarkan Gambar 5.1.4.a Source Code Percobaan 1-4 dapat di lihat bahwa Pada
baris 1 terdapat header #include <Iostream> yang berfungsi untuk untuk menerima
atupun meberi input atau output (cin dan cout),Pada baris ke 2 terdapat using
namespace std yang berfungsi untuk agar ketika membuat perintah tidak perlu
menambahkan std:: pada awal baris pada baris ke 4 terdapat int yang berfungsi untuk
mengembalikan nilai 0 setelah di eksekusi,pada baris ke 6 terdapat tipe data char
dengan variabel a dengan indeks 15 kemudian di inisiasi dengan string Informatika.lalu
pada baris ke 7 terdapat fungsi cout untuk menampilkan output dan di ikuti dengan
endl untuk mengakhiri sebuah baris.pada baris, ke 8 terdapat terdapat inisiasi aray
dengan indeks ke 9 dengan masukan string c .pada baris ke 9 terdapat terdapat inisiasi
aray dengan indeks ke 10 dengan masukan string s.kemudian pada baris ke 10 terdapat
fungsi cout untuk menampilkan output a dan di ikuti dengan endl untuk mengakhiri
sebuah baris.pada baris.pada baris ke 11 terdapat fungsi cin untuk memasukan input
a.pada baris ke 12 terdapat fungsi cout untuk menampilkan input a dari cin pada baris
sebelumnyadan endl sebangai berakhirnya sebuah baris, kemudian return 0 yang
berfungsi untuk mengakhiri sebuah program dan mengembalikannya kepada main.
5.1.4.b Output Percobaan 1-4 Array Character
Berdasarkan Gambar 5.1.4.b Output Percobaan 1-4 Array Character dapat kita lihat
bahwa output yang di hasilkan adalah Informatika pada baris pertama dan informacs
pada baris ke dua,Output informatika di dapat dari source code pada baris ke 6
kemudian informatics di dapat dari source code pada baris 8 dan 9 output yang di
hasilkan berbeda karea terdapat array yang berindex 9 dan 10 dengan masukkan c dan
s sehingga output yang di hasilkan akan berubah pada uruttan 9 dan 10 ,dan array di
mulai dari indek 0 bukan 1itulah mengapa yang berubah bukan dari i
5.2 Array 2 Dimensi
5.2.1 Percobaan 2-1 Array 2D CharAdress
5.2.1.a. Source Code Percobaan 2 Array 2D CharAdress
Pada Gambar 5.2.1.a Source Code Percobaa2-1 Array 2D CharAdress bahwa Pada
baris 1 terdapat header #include <Iostream> yang berfungsi untuk untuk menerima
atupun meberi input atau output (cin dan cout),Pada baris ke 2 terdapat using
namespace std yang berfungsi untuk agar ketika membuat perintah tidak perlu
menambahkan std:: pada awal baris pada baris ke 4 terdapat int yang berfungsi untuk
mengembalikan nilai 0 setelah di eksekusi.pada baris ke 6 terdapat tipe data char
dengan a[3][5]. Pada baris ke 7 terdapat pengulangan for dengan inisiasi tipe data
integer dengan indeks variabel dengan deklarasi i=0 dengan syarat i<3dengan di ikuti
increment i i++,pada baris ke 8 terdapat fungsi cout dengan nilai &a[i] yang akan di
tampilkan pada halaman output kemudian endl yang berfungsi untuk mengakhiri
baris,pada baris ke 9 terdapat fungsi perulangan for dengan indeks variabel ‘j=0; j<5;
j++,pada baris ke 10 terdapat fungsi coutyang akan di tampilkan pada tampilan output
user,pada baris ke 13 terdapat fungsi cout dengan &a dan di ikuti endl bahwa baris
telah berakhir, kemudian return 0 yang berfungsi untuk mengakhiri sebuah program
dan mengembalikannya kepada main.
5.2.1.b Output Percobaan 2-1 Array 2 D CharAdress
Berdasarkan pada Gambar 5.2.1.b Output Percobaan 2-1 Array 2D CharAdress dapat
di lihat output yang di hasilkan berasal dari baris ke 8 dari fungsi cout yang mana pada
baris ke8 ini merupakan haasil dari perulangan for baris ke 7 ke memori ke pada array
a pada output, kemudian fungsi cout pada baris ke 10 akan mencetak array yang telah
di inisiasikan pada perulangan for baris ke 9 yang ada pada source code
5.2.2 Percobaan 2-2: Array 2D IntAddress
5.2.2.a. Source Code Percobaan 2-2 Array 2D IntAdress
Pada Gambar 5.2.2.a Source Code Percobaan 2-2 Array 2D IntAdress Pada baris 1
terdapat header #include <Iostream> yang berfungsi untuk untuk menerima atupun
meberi input atau output (cin dan cout),Pada baris ke 2 terdapat using namespace std
yang berfungsi untuk agar ketika membuat perintah tidak perlu menambahkan std::
pada awal baris pada baris ke 4 terdapat int yang berfungsi untuk mengembalikan nilai
0 setelah di eksekusi, pada baris ke 6 terdapat tipe integer array dengan indeks
a[3][5].pada baris ke 7 terdapat perulangan for dengan inisiasi tipe data integer dengan
indeks variabel dengan deklarasi i=0 dengan syarat i<3dengan di ikuti increment I i++,
pada baris ke 13 terdapat fungsi cout dengan &a dan di ikuti endl bahwa baris telah
berakhir, kemudian return 0 yang berfungsi untuk mengakhiri sebuah program dan
mengembalikannya kepada main.
5.2.2.b Output Percobaan 2-2 Array 2D Int Adress
Berdasarkan Pada Gambar 5.2.2.b Output Percobaan 2-2 Array 2D intAdress dapat di
lihat bahwa output yang di hasilkan merupakan hasil dari source code pada baris ke 7
dengan inisiasi tipe data integer dengan indeks variabel i=0 i<3 i++ yang akan
melakukan run sebanyak 3 kali di ikut cout pada baris ke 8 untuk mencetak array
selanjutnya perulangan pada baris 9 dari source code dengan tipe data integer dengan
variabel j=0; j<5; i++ yang akan melakukan perulangan sebanyak 5 kali dalam setiap
barisnya.dalam hal ini akan mencetak alamat memory pada array, yang selanjutnya
akan di ikuti fungsi cout pada baris ke 10 pada source code yang akan melakukan
pencetakan alamat memory dari array.
4.2.3 Percobaan 2-3: Array 2D InputOutput
Berdasarkan pada Gambar 5.2.3.b Output Percobaan 2-3 Array 2d InputOutput dapat di lihat
bahwa user di minta memasukkan nilai input,yang merupakan berasal dari source code pada
baris ke 9 dan harus bertipe integer. Kemudian pada perulangan for pada baris ke 13 dan 14
pada source code akan melakukan pencetakan nilai ke dalam array a pada tampilan output
dengan fungsi cout.
5.2.4 Percobaan 2-4: Array 2D Index
5.2.4.a Source Code Percobaan 2-4 Array 2D Index
Pada Gambar 5.2.4 Source Code Percobaan 2-4: Array 2D Pada baris 1 terdapat header
#include <Iostream> yang berfungsi untuk untuk menerima atupun meberi input atau
output (cin dan cout),Pada baris ke 2 terdapat using namespace std yang berfungsi
untuk agar ketika membuat perintah tidak perlu menambahkan std:: pada awal baris
pada baris ke 4 terdapat int yang berfungsi untuk mengembalikan nilai 0 setelah di
eksekusi, , pada baris ke 6 terdapat tipe integer array dengan indeks a[2][3].pada baris
ke 7 dan 8 terdapat fungsi pperulangan for dengan inisialisasi tipe data integer yang
diikuti oleh indeks variabel ‘i=0; i<2; i++’ dan ‘j=0; j<3; j++’. Pada baris ke 9 terdapat
fungsi cindengan inisia si array a[i][j] untuk memasukan input user.pada baris ke 12
terdapat perhitungan array dengan nilai a[0][1] = a[1][2] + a[0][0]. Selanjutnya pada
baris ke -12 terdapat operasi perkalian dengan nilai array a[1][1] = a[0][0] * 20. pada
baris ke 13 dan 14 terdapat pengulangan for dengan inisialisasi tipe data integer yang
diikuti oleh indeks variabel ‘i=0; i<2; i++’ dan ‘j=0; j<3; j++’.pada baris ke 15 terdapat
fungsi cout dengan masukkan array dengan indeks [i] [j] kemudian endl sebagai tanda
bahwa baris telah berakhir. kemudian return 0 yang berfungsi untuk mengakhiri sebuah
program dan mengembalikannya kepada main.
5.2.4.b Output Percobaan 2-4 Array 2 D Index
Berdasarkan Pada Gambar 5.2.4.b Output Percobaan 2-4 Array 2 D Index dapat di lihat
bahwa pertama user di minta menginput nilai integer sebanyak 6 kali kemudian
selanjutnya akan di proses oleh source code pada baris ke 12 yang dimana pada baris
tersebut akan mengubah nilai a[0][1] akan menjadi hasil penjumlahan antara a[1][2]
menjadi nilai 6 dan a[0][0] menjadi nilai 1, sehingga pada indeks array a[0][1] menjadi
7. Kemudian terdapat operasi perkalian pada baris ke -12 Yang akan mengubah nilai
daripada array a[1][1] menjadi hasil perkalian[0] ‘nilai 1’ dengan 20, dan array a [1][1]
menjadi nilai 20. Setelah semua operasi dan perubahan pada nilai array
selesai,kemudian fungsi cout pada baris ke 16 akan mencetak nilai dalam array a pada
tampilan output.
VI. KESIMPULAN
• Buat program C yang menggunakan array dua dimensi untuk memasukkan data
jumlah buku dalam dua ruangan selama satu bulan. Setiap ruangan memiliki 4 jenis
buku yang berbeda, sehingga program harus menggunakan matriks 2x4 (ruangan x
jenis buku).
• Setelah data jumlah buku dimasukkan, program harus menghitung jumlah total
buku dalam perpustakaan dengan menjumlahkan jumlah buku dari kedua ruangan
Pada Gambar di atas Pada baris 1 terdapat header #include <Iostream> yang berfungsi
untuk untuk menerima atupun meberi input atau output (cin dan cout),Pada baris ke 2
terdapat using namespace std yang berfungsi untuk agar ketika membuat perintah tidak
perlu menambahkan std:: pada awal baris pada baris ke 4 terdapat int yang berfungsi
untuk mengembalikan nilai 0 setelah di eksekusi,kemudian pada baris 5
mendefinisikan array 2 dimensi dengan 2 baris dan 4 kolom,kemudian pada baris ke 6
terdapat int hasiluntuk menyimpan hasil penjumlahan.kemudian pada baris ke 8
terdapat perulangan for dengan inisialisasi tipe data integer yang diikuti oleh indeks
variabel ‘i=0; i<2; i++’.kemudian pada bariss ke 9 fungsi cout yang di gunakan untuk
menampilkan pesan dengan nomor ruangan yang sedang di input. Kemudian pada baris
ke 10 terdapat perulangan for int j=0; j<4; j++ .pada baris ke 11 terdapat fungsi cout
yang akan menampilkan pesan yang akan di inputkan oleh user.pada baris ke cin
terdapat inisiasi array [i][j] yang akan mengambil input dari user dan menyimpan
array.pada baris ke15 terdapat int i=0 inisiasi variabel 1 dengan nilai 0 .pada baris 16
terdapat perulangan for dengan inisialisasi tipe data integer yang diikuti oleh indeks
variabel ‘j=0; j<4; j++ .pada baris 17 terdapat hasil [j]=arr[i][j]+arr[i+1][j]; yang di
gunakan untuk menghitung jumlah jenis buku dari kedua ruangan untuk setiapjenis
buku dan menympan dalam array. Pada baris ke 21 terdapat fungsi cout yang akan
menampilkan pesan jumlah jenis buku semua ruangan. Pada baris 22 terdapat
perulangan for (int j=0; j<4; j++) yang akan menginisiasi for yang akan berjalan
sebanyak empat kali untuk setiap jenis buku.pada baris 23 terdapat fungsi cout yang
akan menampilkan jumlah jenis buku dari 1 hingga 4 dari kedua ruangan dan di akhiri
denganendl sebagai berakhirnya sebuah baris
Output Tugas Akhir
Berdasarkan Gambar di atas dapat di lihat bahwa pada baris pertama yaitu ruangan 1
berasal dari source code pada baris ke 9 kemudian tampilan pada output yang
menampilkan kata masukan buku jenis merupakan berasal dari source code pada baris
11 dan di sini user di minta memasukkan nilai sebanyak 8 kali ,kemudian pada tampilan
output yang terdapat jumlah jenis buku semua ruangan berasal dari source code pada
baris ke 21 karena terdapat fungsi cout yang di gunakan untuk menampilkan
output,kemudian jenis buku juga merupakan menggunakan fungsi cout dan
melakukannya sebanyak 4 jenis buku.
Flowchart Tugas Akhir