- Array
Array
adalah suatu tipe data terstuktur yang berupa sejumlah data sejenis (bertipe
data sama) dibedakan oleh index yang jumlahnya bisa statis ataupu dinamis dan
diberi suatu nama tertentu. Elemen-elemen array tersusun secara berderet dan
sekuensial di dalam memori sehingga memiliki alamat yang
besebelahan/berdampingan. Array dapat berupa array 1 dimensi, 2 dimensi, bahkan
n-dimensi. Elemen-elemen array bertipe data sama tapi bisa bernilai sama atau berbeda-beda. Keunggulan Array :
- Array sangat cocok untuk pengaksesan acak. Sembarang elemen di array dapat diacu secara langsung tanpa melalui elemen-elemen lain.
- Jika berada di suatu lokasi elemen, maka sangat mudah menelusuri ke elemenelemen tetangga, baik elemen pendahulu atau elemen penerus.
- Jika elemen-elemen array adalah nilai-nilai independen dan seluruhnya harus terjaga, maka penggunaan penyimpanannya sangat efisien.
Kelemahan Array :
- Array harus bertipe homogen. Kita tidak dapat mempunyai array dimana satu elemen adalah karakter, elemen lain bilangan, dan elemen lain adalah tipe-tipe lain.
- Kebanyakan bahasa pemrograman mengimplementasikan array statik yang sulit diubah ukurannya di waktu eksekusi. Bila penambahan dan pengurangan terjadi terus-menerus, maka representasi statis.
Deklarasi Variable Array :
tipe_data nama_var[banyak];
tipe_data : menyatakan jenis tipe data elemen larik (int, char, float, dll)
nama_var : menyatakan nama variabel yang dipakai.
banyak : menunjukkan jumlah maksimal elemen larik.
Example :
tipe_data : menyatakan jenis tipe data elemen larik (int, char, float, dll)
nama_var : menyatakan nama variabel yang dipakai.
banyak : menunjukkan jumlah maksimal elemen larik.
Example :
Char nama[9];
Int nilai[4];
int bilangan[];
char nama[9]: berarti
akan
memesan tempat di memori komputer sebanyak 9 tempat dengan
indeks dari 0-8, dimana semua elemennya bertipe data karakter semuanya.
Kalau satu karakter berukuran 1 byte, berarti membutuhkan memori sebesar
9 byte.
int nilai[4]: berarti
akan memesan tempat di memori komputer sebanyak 4 tempat dengan
indeks dari 0-3, dimana semua elemennya bertipe data integer semuanya. Kalau
satu integer berukuran 4 bytes, berarti membutuhkan memori sebesar 4 x 4 = 16
bytes.
int bilangan[]:berarti
mendeklarasikan array dengan ukuran maksimum array tidak diketahui, namun
ukuran tersebut diketahui berdasarkan inisialisasi yaitu sebanyak 3 elemen,
yang isinya 1,2, dan 3.
Mengakses
Elemen Array
Nama_var[index];
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.
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.
Contoh :
nilai[2];
Contoh syntax :
#include
#include
void main
()
{ int y []
= {1, 2, 7, 4, 5};
int n,
r=0;
for ( n=0
; n<5 ; n++ )
{
r += y[n];
}c
out<<"
"<
getch(); }
Array
Multidimensi
Array
multidimensi yaitu array yang terdiri dari beberapa subskrip atau index array.
Contoh, array 2 dimensi adalah array yang mempunyai 2 index, array 3 dimensi
adalah array yang mempunyai 3 index. Array seperti ini sering digunakan untuk
pemrosesan matrik.
DEKLARASI ARRAY MULTIDIMENSI
tipe_data nama_var[banyak_baris][banyak_kolom];
contoh : int
matriks[3][4];
array ini bisa di ibaratkan table
yang mempunya baris dan kolom.
Contoh pengaksesan :
matrix[2][3];
Maka nilainya ialah 3.
2. Pointer
Pointer adalah suatu variabel
penunjuk yang menunjuk pada suatu alamat memori komputer tertentu. Pointer
merupakan variabel level rendah yang dapat digunakan untuk menunjuk nilai integer,
character, float, double, atau single, dan bahkan tipe-tipe data lain yang
didukung oleh bahasa C. Variabel biasa, sifatnya statis dan sudah pasti,
sedangkan pada pointer sifatnya dinamis dan dapat lebih fleksibel. Variabel
pointer yang tidak menunjuk pada nilai apapun berarti memiliki nilai NULL, dan
disebut sebagai dangling pointer karena nilainya tidak diinisialisasi
dan tidak dapat diprediksi.
Deklarasi variabel pointer
tipe _data * nama_pointer;
- Operator Alamat / Dereference Operator(&)
Setiap variabel yang
dideklarasikan, disimpan dalam sebuah lokasi memori dan pengguna biasanya tidak
mengetahui di alamat mana data tersebut disimpan. Dalam C++, untuk mengetahui
alamat tempat penyimpanan data, dapat digunakan tanda ampersand(&) yang dapat
diartikan “alamat”.
Contoh :
Bil1 = &Bil2;
dibaca: isi variabel bil1 sama dengan alamat bil2
- Operator Reference (*)
Penggunaan operator ini, berarti
mengakses nilai sebuah alamat yang ditunjuk oleh variabel pointer.
Contoh :
Bil1=*Bil2;
dibaca: bil1 sama dengan nilai yang ditunjuk
oleh bil2.
OPERASI POINTER
1. Operasi penugasan
Nilai dari suatu variabel pointer
dapat disalin ke variabel pointer yang lain.
contoh: y = 35;
x1 = &y;
x2 = x1;
2. Operasi aritmatika
Suatu variabel pointer hanya
dapat dilakukan operasi aritmatika dengan nilai integer saja.
Operasi yang biasa dilakukan
adalah operasi penambahan dan pengurangan.
Operasi penambahan dengan suatu
nilai menunjukkan lokasi data berikutnya (index selanjutnya) dalam memori.
Begitu juga operasi pengurangan.
3. Operasi Logika
Suatu pointer juga dapat dikenai operasi logika.
#include"constream.h"
void
main()
{ int a =
100, b = 200, *pa, *pb;
clrscr();
pa =
&a;
pb =
&b;
cout<<"nilai
pa= "<
if(pa <
pb)
cout<<"pa
menunjuk ke memori lebih rendah dari pb\n";
if(pa ==
pb)
cout<<"pa
menunjuk ke memori yang sama dengan pb\n";
if(pa >
pb)
cout<<"pa
menunjuk ke memori lebih tinggi dari pb\n";
getch();
}
Download contoh program C++, Array1, Array2, Array 3 Dimensi, Pointer1, 2, & 3
Selanjutnya kita akan membahasa Linked List !!! Klik Disini Linked List
Sumber : Antonius Rachmat C, S.Kom, Ibu Yuli
Download contoh program C++, Array1, Array2, Array 3 Dimensi, Pointer1, 2, & 3
Selanjutnya kita akan membahasa Linked List !!! Klik Disini Linked List
Sumber : Antonius Rachmat C, S.Kom, Ibu Yuli
0 komentar:
Posting Komentar