Anda di halaman 1dari 15

Nim 20524003

Nama HAIKAL RIVALDI PRIMAYOGA


Kelas A

Tutorial Pertemuan 6

Struktur Data Array

Pengertian Array

Pengertian Array adalah sekumpulan variabel yang memiliki tipe data yang sama
dan dinyatakan dengan nama yang sama. Array merupakan konsep yang
penting dalam pemrograman, karena array memungkinkan untuk menyimpan
data maupun referensi objek dalam jumlah banyak dan terindeks. Dengan array,
data mudah dicari dengan hanya memanggil lokasi indeks suatu data. Urutan
data pada array dimulai dari 0, jadi data pertama pada suatu array memiliki
indeks 0. Untuk lebih jelasnya lihat ilustrasi berikut.

Jenis-jenis array

Berdasarkan dimensinya, terdapat 3 jenis array yang akan dijelaskan berikut ini.

1. Array satu dimensi


Array satu dimensi adalah array yang memiliki 1 baris dan beberapa kolom.
Ilustrasinya adalah sebagai berikut.

Untuk mengakses data urutan pertama (yaitu indeks 0) dari suatu array A kita
hanya perlu memanggil data tersebut dengan A[0].
Cara mendeklarasikan array 1 dimensi adalah sebagai berikut.

type arrayname[arraySize];

Sebagai contoh kita akan mendekalarasikan array A dengan besar data array
yang dapat ditampung adalah 5. Maka sintaksnya adalah sebagai berikut.

int A[5];

Memasukkan data pada setiap indeks array dapat dilakukan dengan cara
berikut.

int A[5] = {1, 2, 3, 4, 5};

Dengan cara tersebut, banyak elemen yang terdapat diantara kurung kurawal { }
tidak boleh lebih banyak daripada nilai yang dideklarasikan pada kurung siku [ ].

Jika kita tidak tahu berapa kapasitas elemen yang dapat disimpan oleh array,
kita dapat menghilangkan nilai yang terdapat di dalam kurung siku [ ], sehingga
kita dapat memasukkan berapapun banyak elemen yang kita kehendaki.

int A[] = {1,2,3,4,5,6,7,8,9,10};

Cara memasukkan data pada suatu indeks array adalah dengan memanggil
indeks array tersebut dan memasukkannya dengan simbol asignment seperti
memasukkan data pada suatu variabel. Cotohnya saya akan memasukkan nilai 1
pada array A indeks ke-0. Maka sintaksnya adalah sebagai berikut.

A[0] = 1;

Untuk mengisi indeks lainnya juga sama seperti di atas. Perlu diingat bahwa
dalam array urutan elemennya adalah mulai dari 0. Jadi, jika ingin mengisi
urutan ke n, maka indeks yang dibuat adalah n-1.

Untuk mengakses elemen suatu array kita hanya perlu memanggil indeks array
tersebut. Contohnya jika saya ingin menampilkan data yang terdapat pada
urutan ke-1 (indeks ke-0) maka sintaksnya adalah sebagai berikut.

#include <stdio.h>
#include <conio.h>

void main(){
int A[5] = {1,2,3,4,5};
int i = 0;
printf("Data indeks ke %i adalah %i", i, A[0]);
getch();//Untuk mencegah program keluar secara otomatis
}

Untuk menampilkan semua data pada array, kita dapat menggunakan


perulangan for.

#include <stdio.h>
#include <conio.h>

void main(){
int A[5] = {1,2,3,4,5};//Deklarasi dan set data setiap
elemen array
int i;
for(i=0; i<5; i++){
printf("Data indeks ke %i adalah %i\n",i , A[i]);
}
getch();//Untuk mencegah program keluar secara otomatis
}

Cobakan kode program diatas, coba lihat dan analisis hasil keluarannya.

2. Array multi dimensi


Array 2 dimensi adalah array yang memiliki beberapa baris dan beberapa
kolom. Contoh sederhana dari array multi dimensi adalah array 2 dimensi. Array
2 dimensi dapat dibayangkan bentuknya seperti matriks. Untuk lebih jelasnya
perhatikan ilustrasi berikut.

Dari gambar di atas dapat kita lihat array A adalah array 2 dimensi, yang dapat
dibayangkan seperti matriks. 

Untuk mendeklarasikan array multi dimensi, caranya adalah sebagai berikut.


type arrayName[arraySize1][ArraySize2];

Sebagai contoh saya saya ingin mendeklarasikan array A adalah array dua
dimensi dengan tipe data integer yang memiliki 3 baris angka dan 4 kolom.
Maka sintaksnya adalah sebagai berikut.
int A[3][4];

Memasukkan data pada array multi dimensi sama halnya dengan array 1
dimensi. Tetapi perlu diperhatikan nilai dalam kurung siku. Contohnya seperti
pada array 2 dimensi.

Jika kita lihat, terdapat kurung siku yang berisikan nilai. Nilai pada kurung siku
pertama merepresentasikan jumlah baris pada array. Sedangkan nilai pada
kurung siku kedua merepresentasikan jumlah kolom atau banyak data setiap
barisnya. Contohnya adalah sebagai berikut.

int A[3][4] = {{1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12}}

Jika kita tidak tahu berapa kapasitas elemen yang dapat disimpan oleh array,
kita dapat menghilangkan nilai yang terdapat di dalam kurung siku [ ], sehingga
kita dapat memasukkan berapapun banyak elemen yang kita kehendaki.

int A[][] = {{1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12}, {13,
14, 15, 16}}

Memasukkan data pada suatu indeks array multidimensi dilakukan dengan cara
berikut.

A[0][0] = 1;

Untuk mengakses elemen suatu array kita hanya perlu memanggil indeks array
tersebut. Contohnya jika saya ingin menampilkan data yang terdapat pada
urutan baris ke-1 dan kolom ke-1 (indeks ke-0) maka sintaksnya adalah sebagai
berikut.

#include <stdio.h>
#include <conio.h>

void main(){
int i=0, j;
int A[3][4] = {{1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11,
12}};
printf("Nilai pada indeks ke-%i adalah %i",i, A[0][0]);
getch();//Untuk mencegah program keluar secara otomatis
}

Untuk menampilkan semua data pada array, kita dapat menggunakan


perulangan for. 

#include <stdio.h>
#include <conio.h>

void main(){
int i=0, j;
int A[3][4] = {{1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11,
12}};
for(i=0; i<3; i++){
for(j=0; j<4; j++){
printf("Data pada indeks ke [%i][%i] adalah %i\n",
i, j, A[i][j]);
}
}
getch();
}

Cobakan kode program diatas, coba lihat dan analisis hasil keluarannya.

1 Cobakan kode program berikut:


2 Pada baris 5, hilangkan tanda komentar, digantikan dengan memberi
tanda komentar pada baris ke 6. Eksekusi program, Jelaskan apa yang
Terjadi?

Jawab :

Ketika tanda komentar diganti dari baris ke-5 ke baris ke-6, akan menampilkan
hasil yang sama Ketika tanda komentar berada di baris ke-5. Perbedaan terdapat
pada baris ke-5 dan ke-6, jika pada baris ke-5 mendeklarasikan nilainya pada
baris ke-9 sampai baris ke-13. Sedangkan pada baris ke-6 setelah
mendeklarasikan variable langsung diinputkan nilai pada baris ke-6 juga.
3 Sebutkan variabel dan tipe data yang terdapat pada program tersebut?

Jawab :

Terdapat variable array yang bertipe double dan variabel i yang bertipe integer.

4 Apakah yang terjadi jika kita tambahkan nilai array[5]=10 pada program
tersebut? Mengapa demikian? Jelaskan!

Jawab :

Yang terjadi pada program saat di run adalah program tetap berjalan namun nilai
pada array[5]=10 tidak tampil. Dikarenakan urutan array selalu dimulai dari
angka 0, sedangkan array[5]=10 merupakan elemen ke-6. Pada program diatas
array hanya memiliki 5 element. Apabila ingin ditampilkan array[5]=10 maka
element array pada program diatas diganti menjadi double array[6]; .
5 Buatlah sebuah program perkalian array 1D, dengan syarat sbb:

▪ Buatlah dua buah array (ex: Array A dan Array B) dengan masing
array memiliki panjang elemen 5.

▪ Isi elemen dari dua array tersebut diinputkan user dari keyboard

▪ Lakukan operasi perkalian Array (Array A * Array B) pada indeks


yang bersesuaian (ex: A[0] * B[0] , A[1] * B[1] dan seterusnya)

▪ Tampilkan hasil perkalian Array pada layar.


Flowchart :
Code Program :

#include <stdio.h>

int main()
{
int A[5];
int B[5];
int i,hasil;

printf("----------------Perkalian Array----------------\n");
printf("===============================================\n");
printf("\n");
printf("Masukan nilai dengan menggunakan bilangan bulat\n");
printf("\n");
printf("nilai array A ke 1 = ");
scanf("%d", &A[0]);
printf("nilai array A ke 2 = ");
scanf("%d", &A[1]);
printf("nilai array A ke 3 = ");
scanf("%d", &A[2]);
printf("nilai array A ke 4 = ");
scanf("%d", &A[3]);
printf("nilai array A ke 5 = ");
scanf("%d", &A[4]);

printf("\n");
printf("----------------------------\n");
printf("\n");

printf("nilai array B ke 1 = ");


scanf("%d", &B[0]);
printf("nilai array B ke 2 = ");
scanf("%d", &B[1]);
printf("nilai array B ke 3 = ");
scanf("%d", &B[2]);
printf("nilai array B ke 4 = ");
scanf("%d", &B[3]);
printf("nilai array B ke 5 = ");
scanf("%d", &B[4]);

printf("\n");
for(i=0;i<5;i++)
{
hasil=A[i]*B[i];
printf("\n");
printf(" Array [%d] * [%d] = %d\n",i,i,hasil);
}
return 0;
}
Screen shoot hasil program:

Anda mungkin juga menyukai