Daftar Menu


video pembelajaran

Selasa, 11 April 2023

P6_Memahami dan mengenal array (array satu dimensi dan array multi dimensi) pada delphi

 1.      Dasar Teori

Array merupakan sebuah variabel yang dapat menampung lebih dari satu data. Array ini dapat diibaratkan seperti lemari yang mempunyai sekat-sekat dimana setiap sekat dalam istilah array disebut dengan elemen, dapat menampung satu data. Setiap elemen dalam array diberi identitas dengan istilah index dimana elemen pertama diberi index 0, elemen kedua diberi index 1, dst. Data yang ditampung pada setiap elemen harus mempunyai tipe data yang sejenis.

Bila anda ingin mengolah data berupa data nilai misalnya 60, 50, 90, 70, dan 80 dimana anda ingin memperoleh hasil yaitu jumlah nilai, rata-rata nilai, standard deviasi maka pengolahan data tersebut lebih tepat menggunakan array supaya kode programnya lebih sederhana. Tetapi ada kalanya untuk data tertentu misalnya matrik harus diselesaikan dengan array.

Ada beberapa jenis array yaitu array dimensi satu, array dimensi dua, array dimensi tiga, dst. Pemilihan dimensi array bergantung kepada data yang diolah. Bila sekelompok data yang mempunyai keterkaitan antar data berada dalam satu arah maka digunakan array dimensi satu seperti data nilai diatas. Bila sekelompok data yang mempunyai keterkaitan antar data berada dalam dua arah maka digunakan array dimensi dua, contohnya adalah data matrik. Bila dalam tiga arah digunakan dimensi tiga, dst. Berdasarkan kapasitasnya, ada array statis  dan  dinamis.  Array statis, kapasitasnya  untuk  menampung  data ditentukan pada saat disain, sedangkan array dinamis kapasitasnya ditentukan pada saat run time.

Seperti layaknya variabel, array juga harus dideklarasikan sebelum digunakan. Sintaks untuk mendeklarasikan array statis adalah:

var <NamaArray> : array [BatasAwal..BatasAkhir] of <TipeData>;

 

Contoh :

       var

DataNilai : array[1..100] of Integer;               {array dimensi satu}

Matrik_A:array[1..5, 1..10] of Integer; {array dimensi dua}

Gaya_B:array[1..5, 1..10, 1..15] of Real; {array dimensi tiga}

 

Pada array DataNilai maksud dari [1..100] adalah  untuk menentukan elemen-elemennya yang dimulai dari index 0 s/d 99, dan dituliskan sbb. :

 

DataNilai[0]; DataNilai[1];

---

---

DataNilai[99];

sehingga kapasitasnya untuk menampung data maksimum 100 data.

 

Sedangkan array Matrik_A  maksud dari [1..5, 1..10] adalah untuk menentukan elemen- elemennya dimulai dari index 0 s/d 4 pada dimensi pertama dan pada dimensi kedua dimulai dari index 0 s/d 9, dan dituliskan sbb. :

 

Matrik_A[0,0]; Matrik_A[0,1];-- Matrik_A[0,9];

Matrik_A[1,0]; Matrik_A[1,1];-- Matrik_A[1,9];

--              --           --

--              --           --

Matrik_A[4,0]; Matrik_A[4,1];-- Matrik_A[4,9];

sehingga kapasitasnya untuk menampung data maksimum 50 data.

Untuk mendeklarasikan array dinamis adalah :

var <NamaArray> : array of <TipeData>;

 

Contoh :

var

pjual : array of Integer;

N : Integer;

begin

N := 5;

SetLength(pjual, N);

---

end;

Pada contoh di atas procedure SetLength (pjual, N) adalah untuk menentukan elemen- elemen array. Bila variabel N diisi dengan 5 maka indexnya dimulai dari 0 s/d 4 sehingga kapasitasnya maksimum 5 data. Tetapi bila variabel N diisi dengan 50 maka indexnya dimulai dari 0 s/d 49 dan kapasitas maksimumnya 50 data. Jadi kapasitas array ini sangat tergantung kepada variabel N.

 

2.      Praktikum

Buatlah desain form program aplikasi sperti pada gambar 6.1 dibawah ini :

Gambar 6.1 Program Statistik

Untuk mengimplementasikan  desain  di  atas,  maka  berikut  ini  adalah  code  untuk eventnya:

procedure TForm1.Button1Click(Sender: TObject);

begin

Edit1.Text := ''; Edit2.Text := ''; Edit3.Text := '';

end;

 

procedure TForm1.Button2Click(Sender: TObject);

var

nilai : Array of Integer;                             

i, N : Integer;

jumlah, rata2, std, sigma : Real;

begin

N := StrToInt(InputBox('Input','Banyaknya Data','')); SetLength(nilai,N);

For i:=1 To N Do

nilai[i-1]:=StrToInt(InputBox('Input Data','ke ' + IntToStr(i),''));

jumlah := 0;

For i:=1 To N Do

jumlah := jumlah + nilai[i-1];

rata2 := jumlah/N;

sigma := 0;

For i:=1 To N Do

sigma := sigma + sqr(nilai[i-1]-rata2);

std := sqrt(sigma/N);

Edit1.Text := FloatToStr(jumlah); Edit2.Text := FloatToStr(rata2); Edit3.Text := FloatToStr(std);

end;

 

procedure TForm1.Button3Click(Sender: TObject);

begin

Application.Terminate;

end;

 

Hasil setelah di Run ditunjukkan pada gambar 6.2 berikut:


Gambar 6.2 Program Statistik setelah Run

 Hasil Klik button proses ditunjukkan pada gambar 6.3



Gambar 6.3 Proses Klik Button

 

3.    Rangkuman

Array merupakan sebuah variabel yang dapat menampung lebih dari satu data. Array ini dapat diibaratkan seperti lemari yang mempunyai sekat-sekat dimana setiap sekat dalam istilah array disebut dengan elemen yang dapat menampung satu data. Ada beberapa jenis array yaitu array dimensi satu, array dimensi dua, array dimensi tiga, dst. Pemilihan dimensi array bergantung kepada data yang diolah

4. Tugas

1.      Setelah mempelajari penggunaan array pada matriks, anda dapat mengaplikasikannya kedalam pembuatan Program Operasi matrik yang berkaitan dengan

a.       Penjumlahan dua matriks,

b.      Pengurangan dua matriks,

c.       Perkalian matriks dengan Skalar

d.      Perkalian dua matriks

e.       Gunakan Radiobutton untuk memilih operasi yang di inginkan

2.      Buatlah program konversi tanggal ke hari. Dengan input tanggal bulan dan tahun!

3.      Dengan inputnya adalah matriks A dan B, serta skalar  k; buatlah program yang dapat digunakan untuk menghitung :

(a). pengurangan matriks  (A B)

(b). perkalian skalar dengan matriks  (kA atau kB)

 


5. Video Pembelajaran

Tidak ada komentar:

Posting Komentar

Silahkan Meninggalkan Pesan