Perulangan dan Array


PERULANGAN
Perulangan atau looping adalah bagian kode program yang bertugas melakukan suatu proses terus-menerus sampai kondisi berhenti terpenuhi. Secara umum, pegulangan dibagi tiga, yaitu perulangan for-do, perulangan while-do dan perulangan repeat-until.
A.   Perulangan For..do
Perulangan for-do  digunakan jika sudah dapat dipastikan kapan pengulangan berhenti. Dengan kata lain, jumlah perulangan yang dibutuhkan sudah diketahui sebelumnya.
For-Do terdiri atas 2 jenis :
ü  For-do Positif
Perulangan dimana nilai awal lebih kecil di banding nilai akhir
ü  For-do Negatif
Perulangan dimana nilai awal lebih besar di banding nilai akhir



Sintaks:


FOR Variable := starindex (To/DownTo) endindex DO BEGIN
          Statement;
END;

Dari sintaks diatas, terdapat dua jenis perubahan yang dapat digunakan, yaitu TO dan DOWNTO. TO akan menghasilkan nilai incremental atau penambahan satu setiap kali terjadi perulangan. Sedangkan DOWNTO akan meghasilkan nilai decremental atau pengurangan satu setiap kali terjadi perulangan.

A.   Perulangan While-Do
Perulangan while-do biasanya digunakan jika banyaknya perulangan tidak diketahui. Misalnya pada program login password, dimana program akan terus mengulang meminta password selama password masihsalah, dan jika password benar proses perulangan berhenti.
Jenis perulangan ini juga di gunakan untuk mengulang statemen atau satu blok statemen berulang kali yang jumlahnya belum bisa ditentukan, tergantung nilai kondisi yang terletak antara while-do.
Perulangan akan dikerjakan bila nilai kondisinya bernilai benar dan akan berhenti jika kondisi bernilai salah.

Bentuk umum dari while-do:

While-do kondisi mengulang  do
Aksi
End while

A.   Perulanagan Repeat-Until
Perulangan repeat-until juga dapat digunakan jika jumlah perulangan tidak diketahui, namun prinsip kerjanya berbeda dengan peulangan while-do. Pada perulangan while-do program akan menyesuaikan variabel dengan kondisi perulangan, jika tidak memenuhi maka perulangan tidak dilakukan. Berbeda dengan repeat-until karena minimal perulangan akan dijalankan sekali sebelum masuk ke kondisi perulangan. Hal tersebut dapat terjadi karena perulangan repeat-until meletakkan kondisi perulangannya di bagian akhir.

Bentuk umum dari repeat-until:

Repeat
            Aksi
Until  kondisiberhenti

Perulangan akan dikerjakan bila nilai kondisinya bernilai salah dan akan berhenti jika kondisi bernilai benar.


ARRAY/LARIK

DEFINISI
Larik atau array dapat didefinisikan sebagai table yang terstruktur. Sebuah array terdiri dari table-tabel yang dapat diisi dengan variable-variabel bertipe sama. Array bertipe integer hanya dapat menampug integer, array bertipe char hanya dapat menampung karakter. Tiap table memiliki indeks (nomor table), pada java indeks dimulai dari 0(nol). Tiap table dapat diisi oleh satu variable.
Fungsi dari array itu adalah untuk menyimpan data yang memiliki jenis yang sama.
KEUNGGULAN DAN KELEMAHAN ARRAY
·           Keunggulan array adalah sbb :
1.    Array sangat cocok untuk pengaksesan acak. Sembarang elemen di array dapat di acu secara langsung tanpa melalui elemen-elemen lain.
2.   Jika berada di suatu lokasi elemen, maka sangat mudah menelusuri ke elemen-elemen tetangga, baik elemen pendahulu atau elemen penerus.
3.   Jika elemen-elemen array adalah nilai-nilai independen dan seluruhnya harus terjaga, maka penggunaan penyimpanannya sangat efisien.

·           Kelemahan array adalah sbb :
Array mempunyai flesibilitas rendah, karena array mempunyai batasan sbb :
1.    Array harus bertipe homogen. Kita tidak dapat mempunyai array dimana satu elemen adalah karakter, elemen lain bilangan, dan elemen lain adalah tipe-tipe lain.
2.   Kebanyakan bahasa pemrograman mengimplementasikan array static yang sulit di ubah ukurannya di waktu eksekusi. Bila penambahan dan pengurangan terjadi terus-menerus, maka representasi statis:
ü  Tidak efisien dalam penggunaan memori
ü  Menyiakan banyak waktu komputasi
ü  Pada suatu aplikasi, representasi atas tidak dimungkinkan.

MACAM-MACAM ARRAY :
Secara umum array dibedakan berdasarkan tingkatannya. Array 1 tingkat hanya memiliki table utama. Array 2 tingkat memiliki table utama dan sub-tabel. Array 3 tingkat memiliki table utama, sub-tabel dan sub-sub table.
v  Array 1 tingkat
Array 1 tingkat hanya terdiri atas satu jenis indeks. Saat mendeklarasikan array kita harus menentukan banyaknya indeks dan tipe data untuk variable.
a)   Deklarasi Array

namaarray: array [1..jumlahindeks] of tipedata
a)   Mengisi indeks array
Bentuk umum :

                        namaarray [indeks]        nilai

v  Array 2 tingkat
Pada dasarnya konsep array 2 tingkat sama seperti array 1 tingkat, hanya saja pada deklarasi array 2 tingkat ada dua macam indeks yang harus kita tentukan. Salah satu penggunaan array 2 tingkat adalah pada operasi matriks, dimana saat mendeklarasikan array kita harus menentukan jumlah indeks baris.
Berikut ini adalah penjelasan untuk array matriks yag terdiri atas 2 kolom dan 3 baris :
a.    Deklarasi Array
Bentuk umum :

namaarray : array
[1..jumlah_indeks_pertama]
[1..jumlah_indeks_kedua] of tipedata

a.    Mengisi indeks array
Bentuk umum :

Namaarray [indekspertama][indekskedua]      nilai
a.    Mengakses nilai pada indeks tertentu
Bentuk umum :

namaarray [indekspertama][indekskedua]