Materi Informatika SMA/MA X - Algoritma dan Pemrograman
1.1
Defenisi Array
Array atau
larik di definisikan sebagai pemesanan alokasi memory berurutan. Definisi ini kurang
tepat, karena terjadi kerancuan antara struktur data dan representasinya. Memang
benar array hampir selalu di implementasikan menggunakan memory berurutan tapi
tidak selalu demikian. Semua elemem array bertipe sama. Array cocok untuk
organisasi kumpulan data homogen yang ukuran atau jumlah elemen maksimumnya
telah diketahui dari awal. Homogen adalah bahwa setiap elemen dari sebuah array
tertentu haruslah mempunyai tipe data yang sama. Ciri dari variable array
adalah:
·
Memiliki
nama,
·
Memiliki
index,
·
Memiliki
tipe data dan
·
Memiliki
elemen
Karakteristik array:
·
Mempunyai
batasan dari pemesanan alokasi memori (bersifat statis).
·
Mempunyai
tipe data sama (bersifat homogen)
·
Dapat
diakses secara acak.
1.2
Deklarasi Array
Untuk
mendeklarasikan sebuah array kita perlu membuat suatu variabel tipe data
telebih dahulu. Ada tiga hal yang harus di ketahui dalam mendeklarasikan array,
yaitu :
·
Type data
array
·
Nama
variable array
·
Subkrip /
index array.
Contohnya dekalrasi array :
type
namaArray [ ukuranArray ];
Didalam
array terdapat Array Statis dan Dinamis, Array statis yaitu array yang nilainya
selalu tetap dan biasanya kita deklarasikan, sedangkan Array Dinamis adalah
suatu array yang nilainya dapat berubah-ubah yang nantinya kita isikan nilainya
melalui perulangan.
Int
Angka[5]={1, 2, 3, 4, 5} >>> Array Statis
Int Angka[5] >>> Array
Dinamis
1.3
Jenis-Jenis Array
a)
Array
Dimensi Satu
Array satu dimensi adalah suatu array yang hanya
terdiri satu subcsript (elemen indeks) array. Bentuk umum deklarasi array
sebagai berikut
Type namaArray [x];
Contoh
program Array berdimensi satu dalam bahasa C.
#include <stdio.h>
int main () {
int n[ 10 ]; // n adalah bilangan array bertipe integer, yang bernilai 10
int i,j;
//inialisasi elemen array n - 0
for ( i = 0; i < 10; i++ ) {
n[ i ] = i + 0; //membuat elemen pada lokasi i dengan i + 0
}
//output dari setiap nilai elemen array
for (j = 0; j < 10; j++ ) {
printf("Elemen[%d] = %d\n", j, n[j] );
// %d berarti bilangan integer , not double
}
return 0;
}
b) Array Dua
Dimensi
Array dua
dimensi adalah suatu array yang terdiri dari baris dan kolom, dua disini juga
berarti dua indeks dimana indeks pertama berupa baris dan indeks kedua berupa
kolom. Cara mendeklarasikannya yaitu :
Type namaArray [x] [y];
int angka[2][3] = {{1, 2, 3}, {4, 5, 6}};
Contoh
program Array dua berdimensi dalam bahasa C.
#include <stdio.h>
int main() {
int x[2][3] = {{1, 2, 3}, {4, 5, 6}}; // insialisasi data
int i, j;
for (i=0; i<2; i++) { // for yang pertama
for (j=0; j<3; j++) { // for yang kedua
printf("%d ", x[i][j]); // mencetak isi array
}
printf("\n"); // mencetak enter pada baris terakhir.
}
return 0;
}
c) Array Tiga Dimensi
Array multi
dimensi yaitu suatu array yang memiliki lebih dari dua dimensi, misalnya 3
dimensi yang banyak digunakan untuk suatu bangun ruang (tiga dimensi). Cara
mendeklarasika Array Multi Dimensi sebagai berikut:
Type namaArray [x] [y] [z] … [N]
Contoh
program Array berdimensi tiga dalam bahasa C.
#include <stdio.h>
int main() {
int x[2][3] = {{1, 2, 3}, {4, 5, 6}}; // insialisasi data
int i, j;
for (i=0; i<2; i++) { // for yang pertama
for (j=0; j<3; j++) { // for yang kedua
printf("%d ", x[i][j]); // mencetak isi array
}
printf("\n"); // mencetak enter pada baris terakhir.
}
return 0;
}
d) Array
Multidimensi
Array
multidimensi merupakan array yang mempunyai ukuran array lebih dari dua. Bentuk
pendeklarasian array multidimensi ini sama dengan pendeklarasian pada array
berdimensi satu maupun berdimensi dua. Cara deklarasi array multidimensi
sebagai berikut.
tipe_data nama_array[ukuran_array_1][ukuran_array_2]...[ukuran_array_n];
Contoh
arrray multidimensi dalam bahasa C.
#include <stdio.h>
main()
{
char nama[3][3][15] = {"Audy Krista","Efan Emanuel","Rafi Chandra","Rio Andiva","Sayid Muntahar","Wira Febriano","Andi Asnaedi","Julia Nabila","Rani Nuraini"};
int i,k,s;
printf("Pembagian tugas kelompok : \n\n");
for(i=0; i<3; i++)
{
printf("Kelompok %d \n", i);
for(s=0; s<3; s++)
{
printf(" %d. %s \n", s+1, nama[i][s]);
}
printf("\n");
}
return 0;
}
1.4
Fungsi Array
a)
Menghitung
Panjang String
Untuk menghitung jumlah karakter dalam suatu string dapat
menggunakan fungsi strlen. Berikut ini adalah contoh penulisan dalam suatu
program:
b)
Include dan
Require
Untuk penulisan fungsi dan data yang berulang-ulang, PHP
memberikan kemudahan yang mampu meringkas pekerjaan dan meminimalkan kesalahan
dalam membuat sebuah program. Dengan pengertian lain, penulisan program dalam
program PHP dapat mengambil data atau perintah yang ada pada file lain yang
sama dalam perintah operasinya. Perintah tersebut menggunakan fungsi include
dan require.
c)
Memecah
String
Untuk memecah/memisahkan string, bisa menggunakan perintah
explode() dengan sintaks seperti berikut:
explode(pola, string, batas)
Keterangan:
• pola adalah karakter
yang dijadikan pemisah
• string adalah data
sumber yang akan diproses
• batas adalah jumlah
pecahan yang akan diambil
d)
Mengubah
Kapitalisasi Huruf
Apabila suatu saat dibutuhkan keharusan untuk mengubah
kapitalisasi huruf menjadi huruf besar semua, atau menjadi huruf kecil semua,
atau pun huruf kecil pada awal kata/kalimat, maka PHP telah menyediakan
fungsi-fungsi tersebut yang tinggal kita gunakan. Fungsi tersebut adalah:
strtoupper(), strtolower(), ucfirst(), ucwords()
•
strtoupper()
adalah fungsi yang digunakan untuk mengubah huruf kecil menjadi huruf kapital
•
strtolower()
adalah fungsi yang digunakan untuk mengubah huruf kapital menjadi huruf kecil.
•
ucfirst()
adalah fungsi yang digunakan untuk mengubah menjadi huruf kapital di awal
kalimat.
•
ucwords()
adalah fungsi yang digunakan untuk mengubah huruf kecil menjadi huruf kapital
di setiap awal kata.
1.2
Keunggulan dan Kelemahan Array
a)
Keunggulan
array adalah sebagai berikut :
·
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 elemen-elemen tetangga,
baik elemen pendahulu atau elemen penerus
·
Jika
elemen-elemen array adalah nilai-nilai independen dan seluruhnya harus
terjaga,maka penggunaan penyimpanannya sangat efisien.
b)
Kelemahan
array adalah sebagai berikut :
Array mempunyai fleksibilitas rendah, sehingga tidak cocok untuk
berbagai aplikasi karena array mempunyai
batasan sebagai berikut :
·
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, tidak efisien dalam penggunaan memori, menyiakan banyak waktu komputasi, dan pada
suatu aplikasi representasi statis tidak dimungkinkan.