Pascal - Array

Bahasa pemrograman Pascal menyediakan struktur data yang disebut array, yang dapat menyimpan kumpulan elemen berurutan berukuran tetap dengan tipe yang sama. Sebuah array digunakan untuk menyimpan sekumpulan data, tetapi seringkali lebih berguna untuk menganggap array sebagai kumpulan variabel dengan tipe yang sama.

Daripada mendeklarasikan variabel individual, seperti number1, number2, ..., dan number100, Anda mendeklarasikan satu variabel array seperti angka dan menggunakan angka [1], angka [2], dan ..., angka [100] untuk mewakili variabel individu. Elemen tertentu dalam array diakses oleh indeks.

Semua array terdiri dari lokasi memori yang berdekatan. Alamat terendah sesuai dengan elemen pertama dan alamat tertinggi untuk elemen terakhir.

Harap dicatat bahwa jika Anda menginginkan array gaya C yang dimulai dari indeks 0, Anda hanya perlu memulai indeks dari 0, bukan 1.

Mendeklarasikan Array

Untuk mendeklarasikan sebuah array di Pascal, seorang programmer dapat mendeklarasikan tipe dan kemudian membuat variabel dari array tersebut atau secara langsung mendeklarasikan variabel array tersebut.

Bentuk umum deklarasi tipe array satu dimensi adalah -

type
   array-identifier = array[index-type] of element-type;

Dimana,

  • array-identifier - menunjukkan nama tipe array.

  • index-type- menentukan subskrip dari array; ini dapat berupa tipe data skalar apa pun kecuali nyata

  • element-type - menentukan jenis nilai yang akan disimpan

Sebagai contoh,

type
   vector = array [ 1..25] of real;
var
   velocity: vector;

Sekarang, kecepatan adalah larik variabel berjenis vektor, yang cukup untuk menampung hingga 25 bilangan real.

Untuk memulai array dari indeks 0, deklarasinya adalah -

type
   vector = array [ 0..24] of real;
var
   velocity: vector;

Jenis Subskrip Array

Dalam Pascal, subskrip array dapat berupa tipe skalar apa pun seperti, integer, Boolean, enumerated atau subrange, kecuali real. Subskrip array bisa memiliki nilai negatif juga.

Sebagai contoh,

type
   temperature = array [-10 .. 50] of real;
var
   day_temp, night_temp: temperature;

Mari kita ambil contoh lain di mana subskrip adalah tipe karakter -

type
   ch_array = array[char] of 1..26;
var
   alphabet: ch_array;

Subskrip bisa dari jenis yang disebutkan -

type
   color = ( red, black, blue, silver, beige);
   car_color = array of [color] of boolean;
var
   car_body: car_color;

Menginisialisasi Array

Dalam Pascal, array diinisialisasi melalui penugasan, baik dengan menentukan subskrip tertentu atau menggunakan for-do loop.

Misalnya -

type
   ch_array = array[char] of 1..26;
var
   alphabet: ch_array;
   c: char;

begin
   ...
   for c:= 'A' to 'Z' do
   alphabet[c] := ord[m];  
   (* the ord() function returns the ordinal values *)

Mengakses Elemen Array

Sebuah elemen diakses dengan mengindeks nama array. Ini dilakukan dengan menempatkan indeks elemen dalam tanda kurung siku setelah nama larik. Misalnya -

a: integer;
a: = alphabet['A'];

Pernyataan di atas akan mengambil elemen pertama dari array bernama alfabet dan memberikan nilai ke variabel a.

Berikut ini adalah contoh, yang akan menggunakan semua tiga konsep yang disebutkan di atas yaitu. deklarasi, tugas dan mengakses array -

program exArrays;
var
   n: array [1..10] of integer;   (* n is an array of 10 integers *)
   i, j: integer;

begin
   (* initialize elements of array n to 0 *)        
   for i := 1 to 10 do
       n[ i ] := i + 100;   (* set element at location i to i + 100 *)
    (* output each array element's value *)
   
   for j:= 1 to 10 do
      writeln('Element[', j, '] = ', n[j] );
end.

Ketika kode di atas dikompilasi dan dijalankan, itu menghasilkan hasil sebagai berikut -

Element[1] = 101
Element[2] = 102
Element[3] = 103
Element[4] = 104
Element[5] = 105
Element[6] = 106
Element[7] = 107
Element[8] = 108
Element[9] = 109
Element[10] = 110

Array Pascal secara Detail

Array penting untuk Pascal dan membutuhkan lebih banyak detail. Ada beberapa konsep penting yang berhubungan dengan array yang harus jelas bagi programmer Pascal -

Sr Tidak Konsep & Deskripsi
1 Array multi-dimensi

Pascal mendukung array multidimensi. Bentuk paling sederhana dari array multidimensi adalah array dua dimensi.

2 Array dinamis

Dalam tipe array ini, panjang awal adalah nol. Panjang sebenarnya dari array harus diatur dengan standarSetLength fungsi.

3 Array yang dikemas

Array ini dikemas dengan bit, yaitu, setiap karakter atau nilai kebenaran disimpan dalam byte yang berurutan daripada menggunakan satu unit penyimpanan, biasanya satu kata (4 byte atau lebih).

4 Meneruskan array ke subprogram

Anda bisa meneruskan ke subprogram sebuah pointer ke sebuah array dengan menentukan nama array tanpa indeks.