Algoritma dan Pascal: Panduan Array 1 Dimensi
Bayangkan Anda perlu mengelola daftar 100 nilai ujian siswa. Jika Anda harus mendeklarasikan 100 variabel terpisah (nilai1, nilai2, ..., nilai100), kode Anda akan menjadi sangat panjang dan sulit dikelola. Array (atau Larik) adalah solusi elegan untuk masalah ini.
Array adalah struktur data yang memungkinkan Anda menyimpan sekumpulan elemen yang sejenis. Ini adalah sebuah variabel tunggal yang memiliki banyak nilai dengan tipe data yang sama.
Konsep Dasar Array
Elemen dan Indeks
Setiap nilai yang disimpan di dalam array disebut Elemen Array. Untuk mengakses setiap elemen, kita menggunakan Indeks Array, yang biasanya berupa angka integer.
Analoginya: Jika array adalah rak buku, maka setiap buku adalah elemen, dan nomor urut di rak adalah indeks yang Anda gunakan untuk mengambil buku tersebut.
Mengapa Menggunakan Array?
Array digunakan bila Anda memiliki sejumlah data yang bertipe sama, yang perlu disimpan sementara dan akan diproses secara berulang. Tujuannya adalah untuk menghindari penggunaan nama-nama variabel yang banyak dan membuat kode lebih efisien.
Contoh masalah tanpa array: Untuk membaca 10 data, Anda harus menulis 10 kali perintah Readln() dengan 10 nama variabel berbeda.
Mendeklarasikan Array
Ada dua cara utama untuk mendeklarasikan array, tergantung pada seberapa sering Anda ingin menggunakan struktur tersebut.
1. Sebagai Variabel Langsung
Cara ini cepat untuk mendeklarasikan array tunggal langsung di blok Var. Anda menentukan batas indeks awal dan akhir di sana.
Format: nama_variabel : array[indeks_awal..indeks_akhir] of tipe_data;
Contoh Deklarasi:
Aadalah array 50 elemen bertipeinteger, indeks dimulai dari 1:A : array[1..50] of integerNilUjianadalah array 75 elemen bertipereal, indeks dimulai dari 0:NilUjian : array[0..75] of real
2. Sebagai Tipe Bentukan (Type Definition)
Cara ini lebih disarankan karena memungkinkan Anda menggunakan struktur array yang sama (tipe bentukan) berulang kali untuk banyak variabel.
Format:
DEKLARASI
type nama_tipe : array[indeks_awal..indeks_akhir] of tipe_data;
var
nama_variabel : nama_tipe;
Contoh Deklarasi Tipe: Jika Anda ingin mendefinisikan array 100 elemen bertipe integer:
type datamhs : array[1..100] of integer;
var
A: datamhs; // A adalah variabel dari tipe datamhs Mengakses dan Memproses Array
Untuk memberikan nilai (assignment) atau membaca nilai array, Anda harus selalu menyertakan indeks elemen yang dituju.
Memberikan Nilai ke Elemen Array
A[4] <- 10 // Mengisi elemen keempat dari array A dengan nilai 10
NamaMhs[i] <- 'Dilan' // Mengisi elemen ke-i dari array NamaMhs dengan string 'Dilan'
Nilai-nilai ini disimpan secara berurutan dalam memori, diidentifikasi oleh indeksnya.
Kombinasi Array dan Perulangan (FOR Loop)
Karena array diakses secara berurutan melalui indeks, ia sangat cocok diproses menggunakan perulangan FOR untuk operasi input, output, atau pemrosesan.
Contoh Input dan Output 10 Nilai dengan Array:
Program ProsesData;
uses crt;
var
n: array [1..10] of string; // Deklarasi array 10 elemen
i: integer;
begin
clrscr;
// LOOP UNTUK INPUT DATA
for i:= 1 to 10 do
begin
write ('masukkan nilai ke',i,':');
readln(n[i]); // Mengisi array ke-i
writeln;
end;
// LOOP UNTUK OUTPUT DATA
for i:=1 to 10 do
begin
write ('nilai ke', i, 'adalah = ',n[i]); // Mengakses array ke-i
writeln;
end;
readln;
end.
Bandingkan kode singkat di atas dengan kode yang harus menulis 10 perintah Readln tanpa array. Jelas, array membuat kode jauh lebih ringkas.
Array Konstan
Anda bahkan dapat mendeklarasikan array yang nilainya sudah pasti di awal (konstan) di blok Const. Contoh yang umum adalah daftar nama bulan:
Const Bulan : array [1..12] of string =
('Januari', 'Februari', 'Maret', ..., 'Desember');
Anda kemudian dapat menampilkan nama bulan dengan mengakses indeksnya: write('Nama bulan ke-1 adalah', Bulan [1]).
Kesimpulan
Array 1 Dimensi adalah struktur data fundamental yang mengorganisir data sejenis dalam satu wadah bernomor. Dengan memahami cara mendeklarasikan dan mengaksesnya melalui indeks yang berpasangan sempurna dengan perulangan FOR, Anda dapat menulis kode yang jauh lebih efisien, terstruktur, dan siap untuk mengelola data dalam jumlah besar.
Tantangan: Buatlah program yang meminta 5 nama, menyimpannya dalam array, kemudian mencetak daftar 5 nama tersebut secara terbalik (nama kelima dicetak pertama, dan seterusnya). (Petunjuk: Gunakan FOR DOWNTO).
