ARRAY€¦ · PPT file · Web view · 2014-02-13Elemen array dua dimensi diakses dengan ... Arial...

17
Algoritma Pemrograman

Transcript of ARRAY€¦ · PPT file · Web view · 2014-02-13Elemen array dua dimensi diakses dengan ... Arial...

Page 1: ARRAY€¦ · PPT file · Web view · 2014-02-13Elemen array dua dimensi diakses dengan ... Arial Calibri Constantia Wingdings 2 Courier New Wingdings Flow 1_Flow 2_Flow 3_Flow

Algoritma Pemrograman

Page 2: ARRAY€¦ · PPT file · Web view · 2014-02-13Elemen array dua dimensi diakses dengan ... Arial Calibri Constantia Wingdings 2 Courier New Wingdings Flow 1_Flow 2_Flow 3_Flow

Definisi Array adalah suatu struktur yang terdiri dari

sejumlah elemen yang memiliki tipe data yang sama.

Elemen-elemen array tersusun secara sekuensial dalam memori komputer.

Array dapat berupa satu dimensi, dua dimensi, tiga dimensi ataupun banyak dimensi (multi dimensi).

Page 3: ARRAY€¦ · PPT file · Web view · 2014-02-13Elemen array dua dimensi diakses dengan ... Arial Calibri Constantia Wingdings 2 Courier New Wingdings Flow 1_Flow 2_Flow 3_Flow

Deklasrasi tipe_data nama_var_array [ukuran];

tipe_data : menyatakan jenis tipe data elemen larik (int, char, float, dll)

nama_var_array : menyatakan nama variabel yang dipakai.

ukuran : menunjukkan jumlah maksimal elemen larik.

Contoh : Int nilai[6];

Page 4: ARRAY€¦ · PPT file · Web view · 2014-02-13Elemen array dua dimensi diakses dengan ... Arial Calibri Constantia Wingdings 2 Courier New Wingdings Flow 1_Flow 2_Flow 3_Flow

INISIALISASI Menginisialisasi array sama dengan

memberikan nilai awal array pada saat didefinisikan.

int nilai[6] = {8,7,5,6,4,3};Contoh diatas berarti berarti anda memesan

tempat di memori komputer sebanyak 6 tempatdengan indeks dari 0-5, dimana indeks ke-0

bernilai 8, ke-1 bernilai 7, dst, dan dimana semua elemennya bertipe data integer.

Page 5: ARRAY€¦ · PPT file · Web view · 2014-02-13Elemen array dua dimensi diakses dengan ... Arial Calibri Constantia Wingdings 2 Courier New Wingdings Flow 1_Flow 2_Flow 3_Flow

Untuk mengakses data pada array, gunakan nomor index sebagai penunjuk lokasi memori, seperti format ininama_array[index];

Index array pada C# dimulai dari 0Misal akan mengakses nilai pertama dari

array yang disimpan pada variabel a, dimana variabel a harus memiliki tipe data yang sama dengan array nilai:a=nilai[0];

Page 6: ARRAY€¦ · PPT file · Web view · 2014-02-13Elemen array dua dimensi diakses dengan ... Arial Calibri Constantia Wingdings 2 Courier New Wingdings Flow 1_Flow 2_Flow 3_Flow

Pengisian dan pengambilan nilai pada indeks tertentu dapat dilakukan dengan mengeset nilai atau menampilkan nilai pada indeks yang dimaksud.

Pengaksesan elemen array dapat dilakukan berurutan atau random berdasarkan indeks tertentu secara langsung.

Page 7: ARRAY€¦ · PPT file · Web view · 2014-02-13Elemen array dua dimensi diakses dengan ... Arial Calibri Constantia Wingdings 2 Courier New Wingdings Flow 1_Flow 2_Flow 3_Flow

Nilai/data yang ada pada array harus sama jumlahnya dengan elemen array yang sudah didefinisikan.

Jika elemen dikosongkan, artinya anda tidak membatasi jumlah nilai yang ada pada array tersebut.

Array terbagi 2, yaitu array satu dimensi dan multidimensi.

Array dapat juga dijadikan argumen/ parameter sebuah fungsi.

Page 8: ARRAY€¦ · PPT file · Web view · 2014-02-13Elemen array dua dimensi diakses dengan ... Arial Calibri Constantia Wingdings 2 Courier New Wingdings Flow 1_Flow 2_Flow 3_Flow

Contoh Program #1#include <iostream.h>#include <conio.h>

int nilai [] = {16, 2, 77, 40, 12071};int n, result=0;

int main (){

for ( n=0 ; n<5 ; n++ ){

result += nilai[n];}cout << result;getch();return 0;

}

Page 9: ARRAY€¦ · PPT file · Web view · 2014-02-13Elemen array dua dimensi diakses dengan ... Arial Calibri Constantia Wingdings 2 Courier New Wingdings Flow 1_Flow 2_Flow 3_Flow

Array Satu DimensiArray Satu dimensi tidak lain adalah kumpulan

elemen-elemen identik yang tersusun dalam satu baris. Elemen-elemen tersebut memiliki tipe data yang sama, tetapi isi dari elemen tersebut boleh berbeda.

Bentuk umum: <tipe data> NamaArray[n] = {elemen0, elemen1, elemen2,.....,n}; n = jumlah elemen

Elemen ke 0 1 2 3 4 5 6 7 8 9Nilai 23 34 32 12 25 14 23 12 11 10

Page 10: ARRAY€¦ · PPT file · Web view · 2014-02-13Elemen array dua dimensi diakses dengan ... Arial Calibri Constantia Wingdings 2 Courier New Wingdings Flow 1_Flow 2_Flow 3_Flow

Contoh Program #2#include <iostream.h>#include <conio.h>main(){int a[5]={10,15,20,25,30};int b[5]={10,20};int j;

// Menampilkan nilai dari element arraycout<<endl;for(j=0;j<5;j++){cout<<"A ["<<j<<"] = "<<a[j]<<" , B ["<<j<<"] = "<<b[j]<<endl;}getch();}

Page 11: ARRAY€¦ · PPT file · Web view · 2014-02-13Elemen array dua dimensi diakses dengan ... Arial Calibri Constantia Wingdings 2 Courier New Wingdings Flow 1_Flow 2_Flow 3_Flow

Array Dua DimensiArray dua dimensi sering digambarkan

sebagai sebuah matriks, merupakan perluasan dari array satu dimensi. Jika array satu dimensi hanya terdiri dari sebuah baris dan beberapa kolom elemen, maka array dua dimensi terdiri dari beberapa baris dan beberapa kolom elemen yang bertipe sama sehingga dapat digambarkan sebagai berikut:

0 1 2 3 4 5 60 10 21 23 43 45 78 651 45 43 65 12 21 12 212 32 34 23 56 54 34 453 11 12 32 23 56 76 45

Page 12: ARRAY€¦ · PPT file · Web view · 2014-02-13Elemen array dua dimensi diakses dengan ... Arial Calibri Constantia Wingdings 2 Courier New Wingdings Flow 1_Flow 2_Flow 3_Flow

Bentuk umum: <tipe data> NamaArray [m][n]; Atau <tipe data> NamaArray [m][n] = { {a,b,..z},

{1,2,...,n-1} }

Pendeklarasian array dua dimensi hampir sama dengan pendeklarasian array satu dimensi, kecuali bahwa array dua dimensi terdapat dua jumlah elemen yang terdapat didalam kurung siku dan keduanya boleh tidak sama.

Elemen array dua dimensi diakses dengan menuliskan kedua indeks elemennya dalam kurung siku.

Page 13: ARRAY€¦ · PPT file · Web view · 2014-02-13Elemen array dua dimensi diakses dengan ... Arial Calibri Constantia Wingdings 2 Courier New Wingdings Flow 1_Flow 2_Flow 3_Flow

Contoh Program #3//array dua dimensi

#include <iostream.h>#include <conio.h>main(){ int matrix[3][3]; int i,j; for(i=0;i<=2;i++) { for(j=0;j<=2;j++) { cout<<"Masukkan angka pada baris ke "<<i<<" kolom ke "<<j<<" : "; cin>>matrix[i][j];

} cout<<endl;

} for(i=0;i<=2;i++){

for(j=0;j<=2;j++) { cout<<matrix[i][j]<<" ";

} cout<<endl; }getch();}

Page 14: ARRAY€¦ · PPT file · Web view · 2014-02-13Elemen array dua dimensi diakses dengan ... Arial Calibri Constantia Wingdings 2 Courier New Wingdings Flow 1_Flow 2_Flow 3_Flow

Penggunaan ArrayDigunakan untuk suatu database, contoh : tabel

Digunakan untuk operasi matematika seperti vektor (array tipe integer)

Digunakan dalam bentuk struktur data lain, contohnya: list, stack, queue.

Page 15: ARRAY€¦ · PPT file · Web view · 2014-02-13Elemen array dua dimensi diakses dengan ... Arial Calibri Constantia Wingdings 2 Courier New Wingdings Flow 1_Flow 2_Flow 3_Flow

Keunggulan ArrayAkses data array sangat mudah dan efisien jika diketahui lokasinya sehingga memungkinkan untuk operasi pengambilan dan penyimpanan data secara langsungContoh : A[2] = 3, artinya menyimpan 3 di posisi-2 array AB = A[5], artinya mengambil nilai diposisi-5 array A ke

variabel B

Page 16: ARRAY€¦ · PPT file · Web view · 2014-02-13Elemen array dua dimensi diakses dengan ... Arial Calibri Constantia Wingdings 2 Courier New Wingdings Flow 1_Flow 2_Flow 3_Flow

Keunggulan ArrayJika lokasi elemen sudah diketahui,

mudah untuk melakukan penelusuran elemen-elemen tetangganya , seperti elemen sebelum dan sesudah dari lokasi elemen yang diketahui.

Untuk data yang nilai-nilainya independen dan terjaga maka penggunaan array sangat efisien dan tepat.

Page 17: ARRAY€¦ · PPT file · Web view · 2014-02-13Elemen array dua dimensi diakses dengan ... Arial Calibri Constantia Wingdings 2 Courier New Wingdings Flow 1_Flow 2_Flow 3_Flow

Kelemahan ArrayKarena array kurang flexibel maka ada

kekurangan-kekurangan dalam penggunaan array:Tipe array harus homogen, misalnya

integer semua atau string semua, tidak bisa beda-beda data dalam satu array.

Penggunaan array statik secara repetisi dalam suatu program tidak efisien untuk memory dan makan banyak waktu komputasi.