You are on page 1of 22

Kuliah 12 Pemrograman Komputer

PENGOLAHAN DATA DALAM
FORMAT ARRAY 2 DIMENSI
(Operasi Matriks : PENJUMLAHAN, PENGURANGAN dan PERKALIAN)
Array (Larik/Baris) ruang penyimpanan data :
Data dengan format array telah dibahas pada
contoh program perhitungan integral (luas, titik
berat) dan penolahan data mahasiswa. Pada
kedua contoh program tersebut, data dikelola
dengan menggunakan satu nama yang sama
tetapi dapat mengelola lebih dari satu data.
Data yang dikelola pada ruang-ruang berbeda di
dalam memori komputer diberi identitas dengan
menggunakan indeks contoh X(i), NMS(i), NUA(i)
dll.
Indeks yang digunakan mempunyai batas bawah dan batas
atas contoh :

Dim Y(1001), X(1001), Luas(1000), SX(1000), SY(1000)
Dim Y1(1001), X1(1001), Y2(1001), X2(1001)

Pada pengolahan data dengan format array maka format
data dapat dibuat dalam bentuk satu dimensi, dua dimensi
atau lebih dari dua dimensi. Tetapi karena program-
program yang digunakan pada umumnya mempunyai
dimensi maksimum tiga, maka array yang sering digunakan
pada umumnya sampai dimesi tiga.
Contoh data dalam format dua dimensi :

Global A(100, 100) As Single, B(100, 100) As Single, C(100,
100) As Single

Global A(100, 100), B(100, 100), C(100, 100) As Single

Semua elemen array mempunyai tipe data yang sama.

Pada Bahasa Visual Basic, array dapat disusun secara statis
dengan jumlah data maksimum sudah tertentu dan tetap
seperti contoh di atas.
Array dapat juga disusun secara dinamis dengan jumlah elemen data
dapat berubah-ubah sesuai keperluan dalam program. Contoh program
dengan array dinamis :
Dim mtrx()
Private Sub Cmdmatriks_Click()
L = Val(Textbaris.Text)
K = Val(Textkolom.Text)
ReDim mtrx(L, K)
For i = 1 To L
For j = 1 To K
mtrx(i, j) = Str(i) + Str(j)
Print mtrx(i, j); Space(5);
Next j
Print
Next i
End Sub
Penjumlahan (Pengurangan) Matriks.
Jika diketahui dua matrik A dan B dengan ordo yang sama
(jumlah baris pada kedua matriks dan jumlah kolom pada
kedua matriks sama) maka dapat dilakukan operasi
penjumlahan matriks C = A + B.
Hasil penjumlahan akan menghasilkan matriks C yang
mempunyai ordo yang sama dengan matriks A dan B.
Proses penjumlahan setiap elemen dalam matriks A dan B
dapat dilakukan dengan menggunakan pendekatan :
[C]ij = [A]ij + [B]ij
i : jumlah baris dalam matriks
j : jumlah kolom dalam matriks

Cara yang sama juga dapat dilakukan pada operasi
pengurangan matriks C = A – B
[C]ij = [A]ij - [B]ij
If m1 = m2 And n1 = n2 Then
For i = 1 To m1
For j = 1 To n1
C(i, j) = A(i, j) + B(i, j)
MSFlexGrid3.TextMatrix(i, j) = C(i, j)
Next j
Next i
Else
MsgBox "Matriks berdimensi tidak
sama, perbaiki terlebih dahulu"
End If
If m1 = m2 And n1 = n2 Then
For i = 1 To m1
For j = 1 To n1
C(i, j) = A(i, j) - B(i, j)
MSFlexGrid3.TextMatrix(i, j) = C(i, j)
Next j
Next i
Else
MsgBox "Matriks berdimensi tidak
sama, perbaiki terlebih dahulu"
End If
Perkalian Matriks.
Perkalian antara dua matriks A dan B menjadi matriks C dapat
dituliskan C = A * B.
Perkalian dua matriks A dan B hanya dapat dilakukan jika
jumlah kolom pada matriks A sama dengan jumlah baris pada
matriks B.

Secara umum operasi perkalian dua matriks A(L,M) dan
B(M,N) menjadi matriks C(L,N) dapat dituliskan :

m
C ij   A ik B kj
k 1
If n1 = m2 Then
For i = 1 To m1
For j = 1 To n2
C(i, j) = 0
For k = 1 To n1
C(i, j) = C(i, j) + A(i, k) * B(k, j)
Next k
MSFlexGrid3.TextMatrix(i, j) = C(i, j)
Next j
Next i
Else
MsgBox "Perkalian matriks tidak bisa
dilakukan, perbaiki terlebih dahulu"
End If
THANKS