Matematika Informatika 1
Matematika Informatika 1
Matematika Informatika 1
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