Anda di halaman 1dari 13

4 Langkah Membuat Kalkulator Matriks

1.
2.

PS: Membuat program kalkulator matriks sederhana


ME : +,-,x, M11=a22a33 - a23a32
C11 = (-1)

1+1

M11

det(A) = a11C11+a12C12+a13C13
t

3.

invers=(1/det)*C
Algoritma:

Def penjumlahan (a0,b0)


a.
b.
Else

Jika len a0 != lenb0


i. Cetak salah inisialisasi orde
i.
ii.

iii.

Menyediakan list matriks kosong untuk c[i,j]


For i in range (0,len(b0))
1. For j in range (0,len(a0))
a. Memasukkan rumus penjumlahan c[i,j]=a0[i,j]+b0[i,j]
return c

Def pengurangan (a0,b0)


a.
b.
Else

Jika len a0 != lenb0


iv. Cetak salah inisialisasi orde
v.
vi.

vii.

Menyediakan list matriks kosong untuk c[i,j]


For i in range (0,len(b0))
1. For j in range (0,len(a0))
a. Memasukkan rumus pengurangan c[i,j]=a0[i,j]-b0[i,j]
return c

Def perkalian (a0,b0)


viii.
ix.

Jika len
1.
Else
1.
2.

3.

a0 != lenb0
Cetak salah inisialisasi orde
Menyediakan list matriks kosong untuk c[i,j]
For i in range (0,len(b0))
a. For j in range
(0,len(a0))
i. For k in range (0,len(b0))
1. Proses rumus perkalian :
c[i,j]=(c[i,j]+a0[i,k]*b0[k,j])
Return c

Def determinan (a0)


#mencari nilai minor
x. Menyediakan list kosong (s)
xi. For m in range (0,3)

1.
2.
3.
4.

Proses hapus baris


Proses hapus kolom
Memproses nilai n = ((y[0,0]*y[1,1])-(y[0,1]*y[1,0]))
Menambahkan nilai n kedalam list s

#element matriks a untuk


pengali xii.

Menyediakan list

kosong (r)
xiii. For j in range (0,3)
1. Memproses o=a[0,j]
2. Memasukkan nilai o ke list r
#kofaktor minor
xiv.
xv.

Menyediakan list kosong (h)


For i in range (1,4)
1. Memproses u= ((-1)**(1+i))
2. Memasukkan nilai u ke list h
#perkalian
matriks

xvi.
xvii.

Menyediakan list kosong (c)


For k in range (0,len(a[0]))
1. Memproses T = s[k]*r[k]*h[k]
2. Memasukkan nilai T ke
list c xviii. Memproses nilai D=0
1. For q in range(0,3)
a. Memproses
p=D+c[q]
b.
D=p
xix. Return p
Def menghitung Transpose kofaktor
(a0)
i.
ii.
iii.

Menyediakan matriks kosong C=zeros((3,3))


Menyediakan matriks kosong Tranpose=zeros((3,3))
For i in range (0,3)
1. For j in range (0,3)
a.
M=0
#menghapus baris i dan kolom j
b. Proses hapus baris ,A = delete(mT,(i), axis=0)
c. Proses hapus kolom,B = delete(A,(j), axis=1)
d. Proses menghitung m=B[0,0]*B[1,1]-B[0,1]*B[1,0]
e. Menghitung kofaktor K=((-1)**((i+1)+
(j+1)))*m f.
Kofaktor=C[i,j]
g.
T[j,i]=C[i,j]
ReturnT[j,i]
Def menghitung kofaktor (a0)
iv.
v.

Menyediakan matriks kosong 3x3 (C)


For i in range (0,3)
3. For j in range (0,3)

a.

M=0

#menghapus baris i
dan kolom j
b. Proses hapus baris ,A = delete(mT,(i), axis=0)
c. Proses hapus kolom,B = delete(A,(j), axis=1)
d. Proses menghitung m=B[0,0]*B[1,1]-B[0,1]*B[1,0]
e. Menghitung kofaktor K=((-1)**((i+1)+
(j+1)))*m f.
C[i,j]=K
ReturnC
Def menghitung transpose (a0)
1. Menyediakan matriks kosong orde 3x3 (t)
2. Mentraspose matriks a kedalam matriks
kosong t
3. Return t
Def menghitung invers (a0)
vi.
vii.
viii.
ix.

x.

Proses D=0
Menyediakan matriks kosong C=zeros((3,3))
Menyediakan matriks kosong Tranpose=zeros((3,3))
For i in range (0,3)
a. For j in range
(0,3)
i. M=0
#menghapus baris i dan
kolom j
ii. Proses hapus baris ,A = delete(mT,(i), axis=0)
iii. Proses hapus kolom,B = delete(A,(j), axis=1)
iv. Proses menghitung m=B[0,0]*B[1,1]-B[0,1]*B[1,0]
v. Menghitung kofaktor K=((-1)**((i+1)+
(j+1)))*m vi. Kofaktor=C[i,j]
vii. T[j,i]=C[i,j]
b. Minor M=mT[i,j]*K
c. Determinan D=D+M
Rumus invers I=(1/(D)*T)

POGRAM UTAMA
i.
ii.
iii.
iv.

v.

vi.

Start
Mencetak judul
Mengimport nampy
Menginisialisasi matriks a =
([[3,3,12],\
[11,8,4],\
[17,9,9]])
Menginisialisasi matriks b =
([[4,5,8],\
[9,7,9],\
[12,16,15]])
While True
1. Menginisialisasi pilihan
1=tambah'
2=kurang

2.
3.

4.

5.

6.

7.

8.

9.

10.

11.

vii.

END

3=kali'
4=determinan'
5=tranpose_k'
6=kofaktor'
7=transpose'
8=invers'
Menginput pilihan
If pilihan==1
a. C=def tambah (a0,b0)
b. Mencetak C
If pilihan==2
a. C= def kurang (a0,b0)
b. Mencetak C
If pilihan==3
a. C= def kali (a0,b0)
b. Mencetak C
If pilihan==4
a. P= def determinan(a0)
b. Mencetak p
If pilihan==5
a. T= def transpose kofaktor(a0)
b. Mencetak T
If pilihan==6
a. C= def kofaktor(a0)
b. Mencetak C
If pilihan==7
a. t=def transpose(a0)
b. mencetak t
if pilihan==8
a. I=def invers(a0)
b. Mencetak I
Else:
a. Mencetak OFF
b. Break

FLOW CHART
Def penjumlahan

Def penjumlahan

If
Len
a0!=le
n b0

ya

Cetak salah inisialisasi orde

tidak

Menyediakan list
kosong untuk
matriks c

For i in
range(0,len(b0))

Return c

For j in range
(0,len(a0))

Proses rumus
penjumlahan :c
[i,j]=a0[i,j]+b0[i,j]

Def pengurangan
Def pengurangan

If
Len
a0!=le
n b0

yaCetak salah inisialisasi orde

tidak
Menyediakan list
kosong untuk
matriks c

For i in
range(0,len(b0))

Return c

For j in range
(0,len(a0))

Proses rumus
pengurangan :c
[i,j]=a0[i,j]-b0[i,j]

Def perkalian
Def pengurangan

If
Len
a0!=le
n b0

Cetak salah inisialisasi orde


ya

Tidak
Menyediakan list
kosong untuk
matriks c

For i in
range(0,len(b0))

Return c

For j in range
(0,len(a0))

Proses rumus
perkalian:c[i,j]=(c[i,j]
+a0[i,k]*b0[k,j])

Def transpose kofaktor


Menyediakan
matriks kosong
C=zeros(3,3)
Menyediakan
matriks kosong
Transponse=ze
ros(3,3)
For i in range
(0,3)

For j in range
(0,3)

M=0

Proses hapus
baris A=
delete(mT,(i),

Proses hapus
kolom
B= delete(A,(j),
Menghitung
kofaktor=((1)**((i+1)+
(j+1)))*m

Kofaktor =C[i,j]

Transpose [j,i]=C[i,j]

Return
T

Def transpose
Menyediakan
matriks kosong
Transponse=ze
ros(3,3)

Tranpose[j,i]=
a[i,j]
Return t

Def Kofaktor
Menyediakan
matriks kosong
C=zeros(3,3)
For i in range
(0,3)

For j in range
(0,3)

M=0
Proses hapus
baris A=
delete(mT,(i),
axis=0)

Proses hapus
kolom
B= delete(A,(j),
Menghitung
kofaktor=((1)**((i+1)+
(j+1)))*m

C[i,j]=Kofakt
or
4

Return t

Def Invers
D=0

Menyediakan list
kosong C
dan list kosong T
berorde
40

20

Mendapat hasil
transpose kofaktor

For i in range (0,3)

For j in range (0,3)

40

Menghapus baris dan


kolom A= delete(a,(i),
axis=0) B= delete(A,
(j), axis=1)

m=(B[0,0]*B[1,
1])(B[0,1]*B[1,0])
K=((1)**((i+1)+
(j+1)))*m

20

Menginisialis
asi C[i,j]=K
T[i,j]C[i,j]

30

50

For i in range (0,3)

I=(1/D)*T

m=a[i,j
]*K
50
D=D+
M

30

Def determinan

List
kosong
For m in range (0,3)

h.append(
u)
List
kosong c

Proses
penghapu
s baris

For k in
range(0,len(a[0]))

Proses
penghapu
s kolom

Proses T=
s[k]*r[k]*h[k]

n=((y[0,0]*y[1,1]
))

c.append(T)

-(y[0,1]*y[1,0])
s.append(
n)
List
kosong r

Return
p

Proses D =0

For q in range (0,3)

For j in range (0,3)


P=D+c[q
Proses o=a[0,j]
D=p
r.append(o)
1
List kosong h

For j in range (1,4)

Proses u = ((1)**(1+i))

FLOW CHART UTAMA


START

Print judul dan identitas

From numpy import *

inisialisasi matriks a
dan b

While true

Cetak off

Break

inisialisasi
pilihan
Input pilihan

If
Pilihan ==1

elif
Pilihan ==2

elif
Pilihan ==3

elif
Pilihan ==4

C=penjumla
han h(a,b)

Cetak C

C=penguran
gan h(a,b)

Cetak C

C=perkalian
h(a,b)

Cetak C

p=deter
minan(a)

Cetak p

END

elif
Pilihan ==5

elif
Pilihan ==6

T=transpose (a)

C=kofaktor(a
)

elif
Pilihan ==7

t=transpose (a)

elif
Pilihan ==8

I=invers (a)

Cetak T

Cetak C

Cetak t

Cetak I

Anda mungkin juga menyukai