Array

13

Click here to load reader

Transcript of Array

Page 1: Array

Array - Yessy Asri 1

ARRAY Array merupakan struktur data yang sering digunakan

dalam pemrograman untuk menyimpan data yang akan diolah kemudian (misalnya pada proses sorting atau searching).

Array adalah struktur data yang terdiri dari kumpulan variabel yang bertipe sama.

Beberapa bahasa pemrograman men-dukung struktur array statis dan dinamis. Pada C/C++, array yang didukung adalah array statis.

Pada C/C++, array merupakan pointer yang mempunyai alokasi memori tetap (pointer constant).

Nilai (Isi) dari elemen-elemen suatu array ditempatkan pada memori yang berurutan.

Akses elemen suatu array bersifat random, artinya dapat dimulai dari mana saja dan tidak harus dari elemen pertamanya.

Page 2: Array

Array - Yessy Asri 2

Deklarasi Array Satu Dimensi : Array satu dimensi adalah array yang sederhana, masing-

masing elemen dapat terpisah dengan menggunakan indeks

Syntax :

tipe Nama_Array [ jumlah elemen ];

tipe Nama_Array [ jumlah elemen ] = { Nilai };

Ketentuan :

indeks terkecil -> 0 (nol)

indeks terbesar -> jumlah_elemen-1;

Contoh :

float x[5] = { 80.50, 90.00, 95.60,88.30, 98.00 };

Page 3: Array

Array - Yessy Asri 3

char Kampus[20] = { ‘B’, ‘I’, ‘N’, ‘U’, ‘S’ };

char Kota[18] = “Jakarta”;

int Jumlah[5] = 0, 1, 2, 3, 4; // salah

float Total[3] = 96.33,98.4, 88.55; // salah

char Arah[10] = ‘B’, ‘A’, ‘R’, ‘A’, ‘T’; // salah

char ARAH[10] = TIMUR; // salah

Akses Elemen Array : Untuk mengakses elemen suatu array dapat bersifat Random

(tidak harus dimulai dari elemen pertama). Setelah suatu array didefinisikan, elemen array dapat diakses

dalam bentuk :

Nama_Array [ indeks ] Apabila didefinisikan array sbb :

float x[5] = { 80.50, 90.00, 95.60,88.30, 98.00 };

Page 4: Array

Array - Yessy Asri 4

maka untuk mengakses elemen array x adalah sbb : Elemen pertama adalah x[0] Elemen kedua adalah x[1] Elemen kelima adalah x[4]

atau

Dalam bentuk umum adalah x[ i ], dimana x[ i ] menyatakan elemen x dengan indeks (subscript) sama dengan i.

Untuk menampilkan semua elemen array x di atas adalah sbb:

for ( int i=0; i<5; i++ ) cout << x[ i ];

Untuk mengisi / mengubah semua nilai elemen array x di atas adalah sbb :

for ( int i=0; i<5; i++ ) cin << x[ i ];

Page 5: Array

Array - Yessy Asri 5

Contoh Program C++ :#include <iostream.h>

#include <conio.h>

void main()

{float Nilai[5], Total = 0, Rerata;

int i=0;

clrscr(); // Hapus layar

do {

cout << “Masukkan nilai ke- “ << i+1 << “ = “

cin >> Nilai[i];

} while ( ++i < 5 );

for ( i=0; i<5; i++ ) Total += Nilai[i];

Rerata = Total / 5;

cout << “Total nilai = “ << Total << ‘\ n’ << “Rata-rata nilai = “ << Rerata << ‘\n’;

getch();

}

Page 6: Array

Array - Yessy Asri 6

Array Sebagai Parameter Fungsi: Array dapat digunakan sebagai parameter untuk suatu fungsi. C++ menetapkan dua alternatif ukuran dari array tertentu

(fixed) dan umum (general). Syntax – fixed-array :

tipe_data Nama_Parameter[ jumlah elemen ]

Contoh :

// Prototipe Fungsi

int Min_Array ( int arr[100], int n );

void sort ( unsigned arr_1[7] );

Syntax – open-array :

tipe_data Nama_Parameter[ ]

atau

tipe_data * Nama_Parameter

Page 7: Array

Array - Yessy Asri 7

Contoh :

// Prototipe Fungsi

int min_arr ( int arr[ ], int n );

void Sort ( unsigned day[ ] );

Contoh Program C++ :

#include <iostream.h>

const int MAX = 10;

int Get_Min ( int a[MAX], int size );

int Get_Max ( int a[MAX], int size );

main() // Program Utama

{ int arr[MAX], n; // Deklarasi Variabel

do {

cout << “Enter number of data [ 2 to “ << MAX << “ ] : “; cin >> n;

} while ( n < 2 || n > MAX );

Page 8: Array

Array - Yessy Asri 8

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

{

cout << “arr[“ << i << “] : “; cin >> arr[i] ;

}

cout << “Smallest value in array is “<< Get_Min (arr, n) << “\ n”

<< “Biggest value in array is “<< Get_Max (arr, n) << “ \n”;

return 0;

}

// Definisi Fungsi

int Get_Min ( int a[MAX], int size )

{

int small = a[0];

for ( int i=1; i<size; i++ )

if ( small > a[i] ) small = a[i];

return small;

}

Page 9: Array

Array - Yessy Asri 9

int Get_Max ( int a[MAX], int size )

{ int big = a[0];

for ( int i=1; i<size; i++ )

if ( big < a[i] ) big = a[i];

return big;

}

Deklarasi Array Multidimensi :Multidimensi array merupakan superset dari single dimensional array.

Setiap penambahan dimensi akan diikuti penambahan attribut akses.

Array dua dimensi memiliki dua attribut yaitu: baris dan kolom.Array tiga dimensi memiliki tiga attribut yaitu: baris, kolom dan tinggi.

Page 10: Array

Array - Yessy Asri 10

Syntax :Dua Dimensi :

tipe Nama_Array [indeks1] [indeks2] ; tipe Nama_Array [indeks1] [indeks2] = { Nila i };

Tiga Dimensi :tipe Nama_Array [indeks1] [indeks2] [indeks3];tipe Nama_Array [indeks1] [indeks2] [indeks3] ={ Nilai };

Contoh :int Jml_Lulusan [3] [4];Untuk menggambarkan tabel kelulusan maha-siswa suatu perguruan tinggi seperti di bawah ini:Indeks Jurusan 1999 2000 2001 2002 0 Teknik Informatika 312 398 455 514 1 Sistem Informasi 288 315 356 394 2 Komputerisasi Akuntansi 560 712 873 1092

Dalam bentuk array dapat ditulis sbb:

Page 11: Array

Array - Yessy Asri 11

int Jml_Lulusan [3] [4] = { {312, 398, 455, 514},{288, 315, 356, 394},

{560,712, 873, 1092} };

atau

int Jumlah [3] [4] = { 312, 398, 455, 514, 288,315, 356, 394, 560, 712,

873, 1092 };

int Nilai[2][3][3];

int Nilai[2][3][3] = { { { 3, 5, 7 }, { 4, 2, 0 } },{ { 1, 2, 3 }, { 9, 7, 5 } },

{ { 0, 4, 8 }, { 2, 4, 6 } } };

Atau

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

Page 12: Array

Array - Yessy Asri 12

STRING : String merupakan array of character. Indeks dimulai dari 0. Diakhiri dengan karakter ‘\0’ (NULL String). Untuk menyimpan n buah karakter dibutuhkan deklarasi

array sebesar n+1. C/C++ dilengkapi dengan kepustakaan (library) yang

lengkap untuk mengakses string (digunakan header file: <string.h> ), seperti

strlen(), strcpy(), strcat(), strcmp(), strchr(), dll.

Deklarasi :char name[31]; // pesan untuk 30 karakterchar Kode_Kuliah[5] = “IF454”;char Kota[3][20] = { “Jakarta”, “Bandung”,“Surabaya” };char Mata_Kuliah[ ] = “PBO”;char Barang = Meja; // salah char Bentuk[2][10] = “Kotak”, “Bulat”; // salah char Nim[11] = { 0400097001 }; // salah

Page 13: Array

Array - Yessy Asri 13

char Nama[30];

strcpy ( Nama, “Indah Cemerlang” );

Contoh Program C++ :

#include <iostream.h>

#include <conio.h>

#include <string.h>

#include <stdio.h>

main()

{ char Name[81]; // alokasi karakter sebanyak 80 buah

clrscr();

cout << “What is your name ? “; gets ( Name );

if ( strlen ( Name ) > 0 )

cout << “Hello, “ << Name << “, how are you ? \n”;

else

cout << “Hmm, I don’t know what is your name.”;

getch(); return 0; }