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.
Array - Yessy Asri 1
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 };
Array - Yessy Asri 2
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 };
Array - Yessy Asri 3
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 ];
Array - Yessy Asri 4
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();
}
Array - Yessy Asri 5
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
Array - Yessy Asri 6
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 );
Array - Yessy Asri 7
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;
}
Array - Yessy Asri 8
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.
Array - Yessy Asri 9
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:
Array - Yessy Asri 10
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 karakter
char 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
Array - Yessy Asri 12
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; }
Array - Yessy Asri 13