Array
Click here to load reader
-
Upload
alimilkhoirunnisa -
Category
Documents
-
view
828 -
download
2
Transcript of 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.
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 };
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 };
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 ];
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();
}
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
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 );
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;
}
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.
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:
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 };
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
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; }