16.11.2012 Views

Matematika Informatika 1

Matematika Informatika 1

Matematika Informatika 1

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Obyektif :<br />

PENJUMLAHAN DAN PENGURANGAN MATRIKS<br />

1. Mahasiswa mengetahui tentang Matriks<br />

2. Mahasiswa mengerti tentang penjumlahan matriks<br />

3. Mahasiswa mengerti tentang pengurangan matriks<br />

Definisi<br />

Matriks adalah himpunan skalar (bilangan riil atau kompleks) yang<br />

disusun/dijajarkan secara empat persegi panjang (menurut baris-baris dan<br />

kolom-kolom).<br />

Skalar-skalar itu disebut elemen matriks.<br />

Contoh :<br />

1 2 3 � baris 1<br />

A = -7 ½ √9 � baris 2<br />

6 0 4 � baris 3<br />

↓ ↓ ↓<br />

kolom 1 2 3<br />

Notasi Matriks (Penamaan Matriks)<br />

Dapat ditulis dengan huruf besar A, B, S, T dan lain-lain.<br />

Bentuk umum dari suatu matriks adalah :<br />

Nama matriks = (indeks baris, indeks kolom)<br />

1


Sebagai contoh pada matriks A diatas :<br />

- berordo � 3 x3,<br />

- A(1, 1) = 1<br />

- A(2, 3) = √9 … dst<br />

Kesamaan Matriks<br />

� ordo yang dimaksud adalah jumlah baris x jumlah kolom<br />

Dua buah matriks atau lebih dikatakan sama jika jumlah baris dan<br />

kolomnya sama (berordo sama).<br />

PENJUMLAHAN DAN PENGURANGAN MATRIKS<br />

dapat dilakukan hanya untuk dua buah matriks atau lebih yang berordo<br />

sama (mempunyai jumlah baris dan kolom sama).<br />

Contoh : 6 3 2 9 3 1<br />

A = 2 4 3 B = -5 9 3<br />

1 0 1 0 2 1<br />

6+9 3+3 2+1 15 9 3<br />

� A + B = 2+(-5) 4+9 3+3 = -3 13 6<br />

1+0 0+2 1+1 1 2 2<br />

6-9 3-3 2-1 -3 0 1<br />

� A - B = 2-(-5) 4-9 3-3 = 7 -5 0<br />

1-0 0-2 1-1 1 -2 0<br />

2


Logika Program Penjumlahan & Pengurangan Matriks<br />

1. Program dibuat dengan berdasarkan pada basis object dan juga<br />

menggunakan menu, yang terdiri dari input matrik, penjumlahan<br />

matriks, pengurangan matriks serta exit program.<br />

2. Deklarasi variable dan procedure-procedure yang digunakan.<br />

3. Pendeklarasian ulang variable berorientasi object dengan nama<br />

variable lain.<br />

4. Membuat procedure t.input untuk melakukan penginputan matrik.<br />

Procedure ini akan dipanggil jika adri menu kita memilih yang nomor 1.<br />

5. Procedure t.tampil akan dieksekusi jika proses menginput data sudah<br />

selesai.<br />

6. Menu pilihan ke-2 akan memproses procedure t.tambah untuk<br />

melakukan untuk melakukan proses penjumlahan dua matrik.<br />

7. Menu pilian ke 3 akan memproses procedure t.kurang untuk melakukan<br />

proses pengurangan matrik.<br />

8. Pada bagian program utama dibuat menu dan akan keluar dari program<br />

tersebut jika memilih angka menu untuk keluar.<br />

3


Obyektif :<br />

PERKALIAN MATRIKS<br />

4. Mahasiswa memahami tentang perkalian skalar matriks<br />

5. Mahasaiswa mampu membuat program perkalian matriks dengan<br />

pemrogran pascal.<br />

Perkalian Matriks :<br />

• Dua matriks yang akan dikalikan atau dibagi dapat dilakukan dengan<br />

syarat :<br />

jumlah kolom matriks pertama = jumlah baris matriks kedua<br />

• Suatu matriks dapat pula dikalikan atau dibagi oleh suatu besaran<br />

skalar.<br />

• Sebagai contoh Matriks A dan B diatas akan dilakukan operasi :<br />

� A x B =<br />

6 3 2 9 3 1<br />

= 2 4 3 x -5 9 3<br />

1 0 1 0 2 1<br />

(6x9)+(3x(-5))+(2x0) (6x3)+(3x9)+(2x2) (6x1)+(3x3)+(2x1)<br />

= (2x9)+(4x(-5))+(3x0) (2x3)+(4x9)+(3x2) (2x1)+(4x3)+(3x1)<br />

• 2 x A =<br />

(1x9)+(0x(-5))+(1x0) (1x3)+(0x9)+(1x2) (1x1)+(0x3)+(1x1)<br />

6 3 2<br />

= 2 x 2 4 3<br />

4


1 0 1<br />

2x6 2x3 2x2<br />

= 2x2 2x4 2x3<br />

2x1 2x0 2x1<br />

12 6 4<br />

= 4 8 6<br />

2 0 2<br />

Beberapa Hukum Perkalian pada Matriks :<br />

1. A(B + C) = AB + AC = BA + CA, memenuhi hukum distributif<br />

2. A(BC) = (AB)C, memenuhi hukum asosiatif<br />

3. Perkalian tidak komutatif, AB ≠ BA<br />

4. Jika AB + 0 (matriks nol) yaitu matriks yang semua elemennya = 0,<br />

kemungkinan-kemungkinannya :<br />

a. A = 0 dan B = 0<br />

b. A = 0 dan B = 0<br />

c. A ≠ 0 dan B ≠ 0<br />

5. Bila AB = AC belum tentu B = C.<br />

Syarat Perkalian Dua Matriks<br />

5


Jika matriks Am x n dan matriks Bp x q dikalikan, maka :<br />

• Banyaknya kolom matriks A harus sama dengan banyaknya kolom<br />

matriks B, sehingga n = p<br />

• Matriks hasil perkalian antara A dan B adalah matriks dengan ordo<br />

m x q<br />

• Perkalian dilakukan dengan menjumlahkan hasil kali setiap elemen<br />

Contoh 1<br />

baris matriks A dengan setiap elemen kolom matriks B yang sesuai<br />

Diketahui matriks-matriks :<br />

Manakah diantara operasi-operasi perkalian matriks berikut yang dapat<br />

dilakukan :<br />

a. A x B Dapat, karena ordo matriks A adalah 2x3 dan ordo matriks<br />

B adalah 3x2, kolom matriks A sama dengan baris matriks B<br />

b. A x C Tidak, ordo matriks A adalah 2x3 sedangkan ordo matriks<br />

C adalah 2x2, kolom matriks A tidak sama dengan baris matriks C<br />

c. B x C Dapat, ordo matriks B adalah 3x2 dan ordo matriks C<br />

adalah 2x2, kolom matriks B sama dengan baris matriks C<br />

d. C x D Tidak, ordo matriks C adalah 2x2 sedangkan ordo matriks<br />

D adalah 3x2, kolom matriks C tidak sama dengan baris matriks D<br />

6


Obyektif :<br />

TRANSPOSE MATRIKS<br />

6. Mahasiswa memahami tentang transpose matriks<br />

7. Mahasisswa memahami logika program transpose matriks<br />

8. Mahasaiswa mampu membuat program transpose matriks dengan<br />

pemrogran pascal.<br />

Transpose Matriks ( T )<br />

� Jika suatu matriks A berukuran mxn, maka matriks transpose A akan<br />

berukuran nxm atau dengan kata lain elemen baris dari matriks A<br />

akan menjadi elemen kolom matriks A (baris jadi kolom).<br />

Contoh :<br />

4 5 6 4 3 7<br />

A = 3 2 1 A T = 5 2 8<br />

Penjelasan :<br />

7 8 9 6 1 9<br />

� Baris 1 pada matriks A, berubah menjadi kolom 1 pada matriks A T .<br />

� Begitu juga pada baris 2 dan 3 pada matriks A, berubah menjadi<br />

kolom 2 dan 3 pada matriks A T .<br />

� Matriks A yang berordo 3x3 setelah ditranspose tetap berordo 3x3.<br />

Beberapa Sifat Matriks Transpose :<br />

� (A+B)T = AT + BT<br />

� (AT)T = A<br />

� χ(AT) = (χA)T, bila suatu skalar<br />

� (AB)T = BTAT<br />

7


Determinan Matriks (det)<br />

Syarat : Determinan hanya dapat dilakukan untuk matriks yang jumlah<br />

Contoh :<br />

baris dan kolomnya sama.<br />

� Terdapat suatu matriks A berukuran (2x2) seperti dibawah ini :<br />

a b<br />

c d maka det(A) = ad – bc.<br />

� Contoh lain terdapat suatu matriks B (berukuran 2x2) seperti dibawah<br />

ini :<br />

1 2<br />

4 5 maka det(B) = (1x5) – (2x4) = 5 – 8 = -3<br />

� Berapa determinan dari matriks C berikut ini ?<br />

(1x5x3)<br />

2 3 4<br />

5 6 7<br />

8 9 1<br />

Penyelesaian :<br />

(-) (-) (-)<br />

2 3 4 2 3<br />

5 6 7 5 6<br />

8 9 1 8 9<br />

(+) (+) (+)<br />

maka det(C) = (2x6x1) + (3x7x8) + (4x5x9) – (8x6x4) – (9x7x2) –<br />

= 12 + 168 + 180 – 192 - 126 – 15<br />

= 30<br />

Sifat-sifat Determinan :<br />

� det(A) = det(A T )<br />

� Tanda determinan berubah apabila dua baris/kolom ditukar<br />

tempatnya<br />

Contoh :<br />

8


2 5 0 3 2 1 1 2<br />

4<br />

3 2 1 = - 2 5 0 = 2 5<br />

0<br />

1 2 4 1 2 4 3 2<br />

1<br />

� Harga suatu determinan menjadi 1 kali, bila suatu baris/kolom<br />

dikalikan dengan 1 (suatu skalar).<br />

Contoh :<br />

2 3 2<br />

A = 4 1 1<br />

0 3 2<br />

bila baris 1 dikalikan 4 maka akan diperoleh<br />

8 12 8 2 3 2<br />

A = 4 1 1 = 4 4 1 1 = 4|A|.<br />

0 3 2 0 3 2<br />

� Harga determinan tidak berubah apabila baris/kolom ke-I ditambah<br />

dengan χ baris/kolom ke-j<br />

Logika Program Transpose<br />

1. Program ini dibuat dengan berbasis object. Program ini juga<br />

menggunakan menu untuk memilih proses yang diinginkan.<br />

Menunya terdiri dari input matrik, transpose matrik, determinan<br />

matrik dan keluar.<br />

2. Mendeklarasikan variable-variabel dan procedure yang digunakan<br />

untuk melakukan penginputan matrik adalah procedure t.input.<br />

3. Melakukan proses penginputan matrik yang berordo 2. Procedure<br />

untuk melakukan penginputan matrik adalah procedure t.input.<br />

4. Procedure t.tampil digunakan untuk menampilkan dalam bentuk<br />

matrik dari hasil penginputan matrik sebelumnya.<br />

9


5. Kemudian apabila memilih menu 2, maka akan ditampilkan<br />

transpose dilakukan dengan menukar baris dengan kolom.<br />

6. Apabila memilih menu 3 maka akan dilakukan proses<br />

penghitungan determinan dari matrik yang diinput. Rumus untuk<br />

menghitung determinan matrik, det = a.d – b.c<br />

7. Program tidak akan berhenti sampai memilih menu 4 untuk<br />

keluar dari program.<br />

Program Menu Transpose<br />

{program Transpose dan Determinan}<br />

uses crt;<br />

type t = object<br />

m1,m2 : array [1..2,1..2] of integer;<br />

lok : array [1..4] of integer;<br />

procedure input;<br />

procedure deter;<br />

procedure tampil;<br />

procedure transpos;<br />

end;<br />

var m :t;<br />

i, j, k, pil, det1, det2 : integer;<br />

procedure t.input;<br />

begin<br />

clrscr;<br />

writeln (' Input Matrik I');<br />

for i:= 1 to 2 do<br />

begin<br />

for j := 1 to 2 do<br />

begin<br />

write ('Elemen Matrik [',i,',',j,']:');<br />

readln (m1[i,j]);<br />

end;<br />

end;<br />

gotoxy (35,1); writeln('input Matrik II');k:=2;<br />

for i:= 1 to 2 do<br />

begin<br />

for j := 1 to 2 do<br />

begin<br />

gotoxy (35,k);inc (k);<br />

write ('elemen Matrik [',i,',',j,']: ');<br />

readln (m2[i,j]);<br />

10


end;<br />

end;<br />

end;<br />

procedure t.tampil;<br />

begin<br />

writeln;<br />

writeln(' *Matrik I*');<br />

writeln (m1[1,1]:5,m1[1,2]:5);<br />

writeln (m1[2,1]:5,m1[2,2]:5);<br />

gotoxy(35,7);writeln('* Matrik II *');<br />

gotoxy (35,8);writeln (m2[1,1]:5,m2[1,2]:5);<br />

gotoxy (35,9);writeln (m2[1,1]:5,m2[2,2]:5);<br />

readln;<br />

end;<br />

procedure t.deter;<br />

begin<br />

det1 := (m1[1,1]*m1[2,2])-(m1[1,2]*m1[2,1]);<br />

det2 := (m2[1,1]*m2[2,2])-(m2[1,2]*m2[2,1]);<br />

writeln;<br />

writeln ('Determinan Matrik I = ',det1);<br />

writeln ('Determinan Matrik II = ',det2);<br />

readln;<br />

end;<br />

Procedure t.transpos;<br />

begin<br />

writeln;writeln ('* Transpose Matrik I *');<br />

writeln(m1[1,1]:5,m1[2,1]:5);<br />

writeln(m1[1,2]:5,m1[2,2]:5);<br />

gotoxy(35,9);writeln('* Transpose Matrik II *');<br />

gotoxy(35,10);writeln(m2[1,1]:5,m2[2,1]:5);<br />

gotoxy(35,11);writeln(m2[1,2]:5,m2[2,2]:5);<br />

readln;<br />

end;<br />

begin<br />

repeat<br />

clrscr;<br />

gotoxy(25,1);writeln ('****** Menu Matrik<br />

******');<br />

gotoxy(25,2);writeln ('1. Input Matrik');<br />

gotoxy(25,3);writeln ('2. Transpose Matrik');<br />

gotoxy(25,4);writeln ('3. Determinan Matrik');<br />

gotoxy(25,5);writeln ('4. Keluar');<br />

gotoxy(27,7);write ('pilihan [1..4] :');<br />

readln(pil);<br />

case pil of<br />

11


end.<br />

1 : begin<br />

m.input;<br />

m.tampil;<br />

end;<br />

2 : m.transpos;<br />

3 : m.deter;<br />

end;<br />

until (pil)=4<br />

Output<br />

****** Menu Matrik ******<br />

1. Input Matrik<br />

2. Transpose Matrik<br />

3. Determinan Matrik<br />

4. Keluar<br />

Pilihan [1..4] :1<br />

Input Matrik I input Matrik II<br />

Elemen Matrik [1,1]:2 elemen Matrik [1,1]:<br />

4<br />

Elemen Matrik [1,2]:3 elemen Matrik [1,2]:<br />

2<br />

Elemen Matrik [2,1]:5 elemen Matrik [2,1]:<br />

6<br />

Elemen Matrik [2,2]:3 elemen Matrik [2,2]:<br />

1<br />

*Matrik I* * Matrik II *<br />

2 3 4 2<br />

5 3 4 1<br />

****** Menu Matrik ******<br />

1. Input Matrik<br />

2. Transpose Matrik<br />

3. Determinan Matrik<br />

4. Keluar<br />

Pilihan [1..4] :2<br />

12


* Transpose Matrik I * * Transpose Matrik II<br />

*<br />

2 5 4 6<br />

3 3 2 1<br />

****** Menu Matrik ******<br />

1. Input Matrik<br />

2. Transpose Matrik<br />

3. Determinan Matrik<br />

4. Keluar<br />

Determinan Matrik I = -9<br />

Determinan Matrik II = -8<br />

Pilihan [1..4] :3<br />

13


Obyektif :<br />

ADJOIN MATRIKS<br />

9. Mahasiswa memahami tentang Adjoin matriks<br />

10. Mahasaiswa mampu membuat program Adjoin matriks dengan<br />

pemrogran pascal.<br />

MATRIKS ADJOIN<br />

Pandang matriks A = (aij) diatas. Kita sebut kofaktor dari elemen<br />

aij, maka transpose dari matriks (Aij) disebut MATRIKS ADJOIN dari A.<br />

A11 A21 …. An1<br />

adj. A = A12 A22 …. An2<br />

Contoh :<br />

….. …. …. ….<br />

A1n A1n …. Ann<br />

Kita hendak mencari matriks adjoin dari A = 2 3 -4<br />

0 -4 2<br />

1 -1 5<br />

Maka kofaktor dari kesembilan elemen dari A adalah sebagai berikut :<br />

A11 = + -4 2 = -18 , A12 = - 0 2 = 2 ,<br />

-1 5 1 5<br />

A13 = + 0 -4 = 4 , A21 = - 4 -4 = -11 ,<br />

1 -1 -1 5<br />

A22 = + 2 -4 = 14 , A23 = - 2 3 = 5 ,<br />

1 5 1 -1<br />

A31 = + 3 -4 = -10 , A32 = - 2 4 = -4 ,<br />

-4 2 0 2<br />

14


A33 = + 2 3 = -8<br />

0 -4<br />

-18 -11 -10<br />

Jadi adj. A = 2 14 -4<br />

4 5 -8<br />

Dengan pertolongan matriks adjoin kita dapat mencari invers<br />

suatu matriks, menggunakan rumus :<br />

Contoh :<br />

berikut :<br />

A -1 = adj.A , dengan syarat det(A) ≠<br />

det(A)<br />

Kita dapat mencari A -1 dengan mengunakan matriks adjoin sebagai<br />

A = 2 1<br />

4 3 , maka A11 = 3; A12 = -4; A21 = -1; A22 = 2.<br />

adj.A = 3 -1 , det(A) = 2 1 = 2<br />

-4 2 4 3<br />

3 -1<br />

-4 2<br />

3 /2<br />

-½<br />

Jadi A -1 = =<br />

2 -2 1<br />

Contoh :<br />

det(A) = 2 3 -4 = 2 -4 2 + 3 -4<br />

0 -4 2 -1 5 -4 2<br />

1 -1 5<br />

= -36 – 10 - -46<br />

15


Jadi A -1 = adj.A = 1 -18 -11 -10 =<br />

det(A) -46 2 14 -4<br />

9 /23 11 /46 5 /23<br />

- 1 /23 - 7 /23 2 /23<br />

- 2 /23 - 5 /46 2 /23<br />

4 5 -8<br />

16


Obyektif :<br />

DETERMINAN MATRIKS<br />

11. Mahasiswa memahami tentang determinan matriks<br />

12. Mahasiswa memahami logika dari pemrograman determinan<br />

matriks<br />

13. Mahasaiswa mampu membuat program determinan matriks<br />

dengan pemrogran pascal.<br />

Determinan Matriks (det)<br />

Syarat : Determinan hanya dapat dilakukan untuk matriks yang jumlah<br />

Contoh :<br />

baris dan kolomnya sama.<br />

� Terdapat suatu matriks A berukuran (2x2) seperti dibawah ini :<br />

a b<br />

c d maka det(A) = ad – bc.<br />

� Contoh lain terdapat suatu matriks B (berukuran 2x2) seperti dibawah<br />

ini :<br />

1 2<br />

4 5 maka det(B) = (1x5) – (2x4) = 5 – 8 = -3<br />

� Berapa determinan dari matriks C berikut ini ?<br />

(1x5x3)<br />

2 3 4<br />

5 6 7<br />

8 9 1<br />

Penyelesaian :<br />

(-) (-) (-)<br />

2 3 4 2 3<br />

5 6 7 5 6<br />

8 9 1 8 9<br />

(+) (+) (+)<br />

maka det(C) = (2x6x1) + (3x7x8) + (4x5x9) – (8x6x4) – (9x7x2) –<br />

= 12 + 168 + 180 – 192 - 126 – 15<br />

17


= 30<br />

Sifat-sifat Determinan :<br />

� det(A) = det(A T )<br />

� Tanda determinan berubah apabila dua baris/kolom ditukar<br />

tempatnya<br />

Contoh :<br />

2 5 0 3 2 1 1 2<br />

4<br />

3 2 1 = - 2 5 0 = 2 5<br />

0<br />

1 2 4 1 2 4 3 2<br />

1<br />

� Harga suatu determinan menjadi 1 kali, bila suatu baris/kolom<br />

dikalikan dengan 1 (suatu skalar).<br />

Contoh :<br />

2 3 2<br />

A = 4 1 1<br />

0 3 2<br />

bila baris 1 dikalikan 4 maka akan diperoleh<br />

8 12 8 2 3 2<br />

A = 4 1 1 = 4 4 1 1 = 4|A|.<br />

0 3 2 0 3 2<br />

� Harga determinan tidak berubah apabila baris/kolom ke-I ditambah<br />

dengan χ baris/kolom ke-j<br />

Logika Program Determinan<br />

8. Program ini dibuat dengan berbasis object. Program ini juga<br />

menggunakan menu untuk memilih proses yang diinginkan.<br />

Menunya terdiri dari input matrik, transpose matrik, determinan<br />

matrik dan keluar.<br />

18


9. Mendeklarasikan variable-variabel dan procedure yang digunakan<br />

untuk melakukan penginputan matrik adalah procedure t.input.<br />

10. Melakukan proses penginputan matrik yang berordo 2. Procedure<br />

untuk melakukan penginputan matrik adalah procedure t.input.<br />

11. Procedure t.tampil digunakan untuk menampilkan dalam bentuk<br />

matrik dari hasil penginputan matrik sebelumnya.<br />

12. Kemudian apabila memilih menu 2, maka akan ditampilkan<br />

transpose dilakukan dengan menukar baris dengan kolom.<br />

13. Apabila memilih menu 3 maka akan dilakukan proses<br />

penghitungan determinan dari matrik yang diinput. Rumus untuk<br />

menghitung determinan matrik, det = a.d – b.c<br />

14. Program tidak akan berhenti sampai memilih menu 4 untuk<br />

keluar dari program.<br />

Program Menu Determinan<br />

{program Transpose dan Determinan}<br />

uses crt;<br />

type t = object<br />

m1,m2 : array [1..2,1..2] of integer;<br />

lok : array [1..4] of integer;<br />

procedure input;<br />

procedure deter;<br />

procedure tampil;<br />

procedure transpos;<br />

end;<br />

var m :t;<br />

i, j, k, pil, det1, det2 : integer;<br />

procedure t.input;<br />

begin<br />

clrscr;<br />

writeln (' Input Matrik I');<br />

for i:= 1 to 2 do<br />

begin<br />

for j := 1 to 2 do<br />

begin<br />

write ('Elemen Matrik [',i,',',j,']:');<br />

readln (m1[i,j]);<br />

end;<br />

19


end;<br />

gotoxy (35,1); writeln('input Matrik II');k:=2;<br />

for i:= 1 to 2 do<br />

begin<br />

for j := 1 to 2 do<br />

begin<br />

gotoxy (35,k);inc (k);<br />

write ('elemen Matrik [',i,',',j,']: ');<br />

readln (m2[i,j]);<br />

end;<br />

end;<br />

end;<br />

procedure t.tampil;<br />

begin<br />

writeln;<br />

writeln(' *Matrik I*');<br />

writeln (m1[1,1]:5,m1[1,2]:5);<br />

writeln (m1[2,1]:5,m1[2,2]:5);<br />

gotoxy(35,7);writeln('* Matrik II *');<br />

gotoxy (35,8);writeln (m2[1,1]:5,m2[1,2]:5);<br />

gotoxy (35,9);writeln (m2[1,1]:5,m2[2,2]:5);<br />

readln;<br />

end;<br />

procedure t.deter;<br />

begin<br />

det1 := (m1[1,1]*m1[2,2])-(m1[1,2]*m1[2,1]);<br />

det2 := (m2[1,1]*m2[2,2])-(m2[1,2]*m2[2,1]);<br />

writeln;<br />

writeln ('Determinan Matrik I = ',det1);<br />

writeln ('Determinan Matrik II = ',det2);<br />

readln;<br />

end;<br />

Procedure t.transpos;<br />

begin<br />

writeln;writeln ('* Transpose Matrik I *');<br />

writeln(m1[1,1]:5,m1[2,1]:5);<br />

writeln(m1[1,2]:5,m1[2,2]:5);<br />

gotoxy(35,9);writeln('* Transpose Matrik II *');<br />

gotoxy(35,10);writeln(m2[1,1]:5,m2[2,1]:5);<br />

gotoxy(35,11);writeln(m2[1,2]:5,m2[2,2]:5);<br />

readln;<br />

end;<br />

begin<br />

repeat<br />

clrscr;<br />

20


gotoxy(25,1);writeln ('****** Menu Matrik<br />

******');<br />

gotoxy(25,2);writeln ('1. Input Matrik');<br />

gotoxy(25,3);writeln ('2. Transpose Matrik');<br />

gotoxy(25,4);writeln ('3. Determinan Matrik');<br />

gotoxy(25,5);writeln ('4. Keluar');<br />

gotoxy(27,7);write ('pilihan [1..4] :');<br />

readln(pil);<br />

end.<br />

case pil of<br />

1 : begin<br />

m.input;<br />

m.tampil;<br />

end;<br />

2 : m.transpos;<br />

3 : m.deter;<br />

end;<br />

until (pil)=4<br />

Output<br />

****** Menu Matrik ******<br />

1. Input Matrik<br />

2. Transpose Matrik<br />

3. Determinan Matrik<br />

4. Keluar<br />

Pilihan [1..4] :1<br />

Input Matrik I input Matrik II<br />

Elemen Matrik [1,1]:2 elemen Matrik [1,1]:<br />

4<br />

Elemen Matrik [1,2]:3 elemen Matrik [1,2]:<br />

2<br />

Elemen Matrik [2,1]:5 elemen Matrik [2,1]:<br />

6<br />

Elemen Matrik [2,2]:3 elemen Matrik [2,2]:<br />

1<br />

*Matrik I* * Matrik II *<br />

2 3 4 2<br />

5 3 4 1<br />

21


****** Menu Matrik ******<br />

1. Input Matrik<br />

2. Transpose Matrik<br />

3. Determinan Matrik<br />

4. Keluar<br />

Pilihan [1..4] :2<br />

* Transpose Matrik I * * Transpose Matrik II<br />

*<br />

2 5 4 6<br />

3 3 2 1<br />

****** Menu Matrik ******<br />

1. Input Matrik<br />

2. Transpose Matrik<br />

3. Determinan Matrik<br />

4. Keluar<br />

Determinan Matrik I = -9<br />

Determinan Matrik II = -8<br />

Pilihan [1..4] :3<br />

22


Obyektif :<br />

INVERS MATRIKS<br />

14. Mahasiswa memahami tentang invers matriks<br />

15. Mahasiswa memahami logika dari pemrograman inversmatriks<br />

16. Mahasaiswa mampu membuat program invers matriks dengan<br />

pemrogran pascal.<br />

Logika Program Matriks Invers<br />

1. Program menu invers ini dibuat berbasis object. Menunya terdiri<br />

dari input matrik, matrik invers, dan keluar.<br />

2. Mendeklarasikan variabel-variabel dan procedure yang digunakan.<br />

3. Menu pertama melakukan penginputan matrik. Pertama memilih<br />

ordo yang diinginkan dari matrik tersebut. Ordo 2 atau 3.<br />

Procedure t.input. akan melakukan jumlah penginputan sesuai<br />

dengan ordo matrik.<br />

4. Menu ke-2 akan menampilkan proses penghitungan determinan<br />

matrik.<br />

5. Program akan berakhir jika memilih pilihan ke-3 untuk keluar.<br />

Program Matrik Invers<br />

uses crt;<br />

type matrik = object<br />

emat, kof : array [1..3,1..3] of integer;<br />

procedure input;<br />

procedure tampil;<br />

procedure invers;procedure invers2; procedure<br />

invers3;<br />

end;<br />

var i,j,ordo,det,pil : integer;<br />

mat : matrik;<br />

procedure matrik.input;<br />

23


egin<br />

writeln ;<br />

write ('Masukan Elemen Matrik ',ordo,'X',ordo);<br />

writeln;<br />

for i := 1 to ordo do<br />

begin<br />

for j := 1 to ordo do<br />

begin<br />

write ('Elemen [',i,',',j,'] = ');<br />

readln (emat[i,j]);<br />

end;<br />

end;<br />

end;<br />

procedure matrik.tampil;<br />

begin<br />

writeln;<br />

for i:=1 to ordo do<br />

begin<br />

for j:= 1 to ordo do<br />

begin<br />

write (emat[i,j]:5,' ');<br />

end;<br />

writeln;<br />

end;<br />

readln;<br />

end;<br />

procedure matrik.invers;<br />

begin<br />

if ordo = 2 then matrik.invers2<br />

else matrik.invers3;<br />

end;<br />

procedure matrik.invers2;<br />

begin<br />

writeln;<br />

det := (emat[1,1]*emat[2,2])-<br />

(emat[1,2]*emat[2,1]);<br />

writeln ('Determinan Matrik = ',det);writeln;<br />

writeln ('Matrik Inversnya :'); writeln;<br />

writeln (emat[2,2],'/',det,' ','-<br />

',emat[1,2],'/',det);<br />

writeln('-',emat[2,1],'/',det,'<br />

',emat[1,1],'/',det);<br />

readln;<br />

end;<br />

procedure matrik.invers3;<br />

24


var detA, detB : integer;<br />

{emat, kof : array [1..3,1..3] of integer;}<br />

begin<br />

detA:= ((emat[1,1] * emat[2,2] * emat[3,3]) +<br />

(emat[1,2] * emat[2,3] * emat[3,1]) + (emat[1,3] *<br />

emat[2,1] * emat[3,1]));<br />

detB:= ((emat[1,3] * emat[2,2] * emat[3,1]) +<br />

(emat[2,3] * emat[3,2] * emat[1,1]) + (emat[1,2] *<br />

emat[2,1] * emat[3,3]));<br />

det := detA - detB;<br />

writeln;writeln ('Determinan Matrik = ',<br />

det);writeln;<br />

kof[1,1]:=(emat[2,2]*emat[3,3])-<br />

(emat[3,2]*emat[2,3]);<br />

kof[1,2]:=(emat[2,1]*emat[3,3])-<br />

(emat[2,3]*emat[3,1]);<br />

kof[1,3]:=(emat[2,1]*emat[3,2])-<br />

(emat[2,2]*emat[3,1]);<br />

kof[2,1]:=(emat[1,2]*emat[3,3])-<br />

(emat[1,3]*emat[3,2]);<br />

kof[2,2]:=(emat[1,1]*emat[3,3])-<br />

(emat[1,3]*emat[3,1]);<br />

kof[2,3]:=(emat[1,1]*emat[3,2])-<br />

(emat[1,2]*emat[3,1]);<br />

kof[3,1]:=(emat[1,2]*emat[2,3])-<br />

(emat[1,3]*emat[2,2]);<br />

kof[3,2]:=(emat[1,1]*emat[2,3])-<br />

(emat[1,3]*emat[2,1]);<br />

kof[3,3]:=(emat[1,1]*emat[2,2])-<br />

(emat[1,2]*emat[2,1]);<br />

writeln ('Matrik Adjoin :');writeln;<br />

for i :=1 to 3 do<br />

begin<br />

for j:= 1 to 3 do<br />

begin<br />

write (kof[i,j]:8,' ');<br />

end;<br />

writeln;<br />

end;<br />

writeln;writeln ('Matrik Invers :');writeln;<br />

for i:= 1 to 3 do<br />

begin<br />

for j:= 1 to 3 do<br />

begin<br />

write (kof[i,j],'/',det,' ');<br />

end;<br />

writeln;<br />

end;<br />

25


end;<br />

readln;<br />

begin<br />

repeat<br />

clrscr;<br />

gotoxy (25,1);writeln ('***** Menu Matrik *****');<br />

gotoxy (25,2);writeln ('1. Input Matrik');<br />

gotoxy (25,3);writeln ('2. Matrik Invers');<br />

gotoxy (25,4);writeln ('3. Keluar');<br />

gotoxy (25,5);writeln<br />

('************************');<br />

gotoxy (27,6);write ('Pilihan [1..3] :'); readln<br />

(pil);<br />

end.<br />

Output<br />

case pil of<br />

1 : begin<br />

mat.input;<br />

mat.tampil;<br />

end;<br />

2 : mat.invers;<br />

end;<br />

until (pil) = 3;<br />

Masukan Ordo Matrik [2/3] : 3<br />

Masukan Elemen Matrik 3x3<br />

Elemen [1,1] = 2<br />

Elemen [1,2] = 5<br />

Elemen [1,3] = 3<br />

Elemen [2,1] = 9<br />

Elemen [2,2] = 2<br />

Elemen [2,3] = 1<br />

Elemen [3,1] = 4<br />

Elemen [3,2] = 5<br />

***** Menu Matrik *****<br />

1. Input Matrik<br />

2. Matrik Invers<br />

3. Keluar<br />

************************<br />

Pilihan [1..3] :1<br />

26


Elemen [3,3] = 7<br />

2 5 3<br />

9 2 1<br />

4 5 7<br />

Determinan Matrik = -193<br />

Matrik Adjoin :<br />

***** Menu Matrik *****<br />

1. Input Matrik<br />

2. Matrik Invers<br />

3. Keluar<br />

************************<br />

Pilihan [1..3] :2<br />

9 59 37<br />

20 2 -10<br />

-1 -25 -41<br />

Matrik Invers :<br />

9/-193 59/-193 37/-193<br />

20/-193 2/-193 -10/-193<br />

-1/-193 -25/-193 -41/-193<br />

27


Obyektif :<br />

PERSAMAAN LINIER DAN VEKTOR<br />

17. Mahasiswa memahami tentang persamaan linier dan vector<br />

18. Mahasiswa memahami tentang dot produk dan sudut antara 2<br />

vektor<br />

19. Mahasaiswa mampu membuat program persamaan linier dan<br />

vector dengan pemrogran pascal.<br />

28

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!