4 langkah membuat kalkulator matriks

13
4 Langkah Membuat Kalkulator Matriks 1. PS: Membuat program kalkulator matriks sederhana 2. ME : +,-,x, M11=a 22 a - a 2 a 2 !11 = "-1# 1+1 M 11 det(A) = a 11 C 11 +a 12 C 12 +a 13 C 13 in$ers="1%det#&! t . 'lgoritma: (e) pen*umlahan"a ,b # a. ika len a = lenb i. !etak salah inisialisasi orde/ b. Else i. Men0ediakan list matriks kosong untuk i,*3 ii. 4or i in range " ,len"b ## 1. 4or * in range " ,len"a # # a. Memasukkan rumus pen*umlahan i,*3=a i,*3+b i,*3 iii. return (e) pengurangan"a ,b # a. ika len a = lenb i$. !etak salah inisialisasi orde/ b. Else $. Men0ediakan list matriks kosong untuk i,*3 $i. 4or i in range " ,len"b ## 1. 4or * in range " ,len"a ## a. Memasukkan rumus pengurangan i,*3=a i,*3-b i,*3 $ii. return (e) perkalian "a ,b # $iii. ika len a = lenb 1. !etak salah inisialisasi orde/ ix. Else 1. Men0ediakan list matriks kosong untuk i,*3 2. 4or i in range " ,len"b ## a. 4or * in range " ,len"a # # i. 4or k in range " ,len"b ## 1. Proses rumus perkalian : i,*3=" i,*3+a i,k3&b k,*3# . 5eturn (e) determinan "a # 6men ari nilai minor x. Men0ediakan list kosong "s# xi. 4or m in range " ,#

Upload: inggrid-ayu-putri

Post on 06-Oct-2015

224 views

Category:

Documents


2 download

DESCRIPTION

djdh

TRANSCRIPT

4 Langkah Membuat Kalkulator Matriks

1. PS: Membuat program kalkulator matriks sederhana2. ME : +,-,x, M11=a22a33 - a23a32

C11 = (-1)1+1M11

det(A) = a11C11+a12C12+a13C13

invers=(1/det)*Ct3. Algoritma:

Def penjumlahan (a0,b0)

a. Jika len a0 != lenb0i. Cetak salah inisialisasi ordeb. Else

i. Menyediakan list matriks kosong untuk c[i,j]ii. 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]iii. return c

Def pengurangan (a0,b0)

a. Jika len a0 != lenb0iv. Cetak salah inisialisasi ordeb. Else

v. Menyediakan list matriks kosong untuk c[i,j]vi. 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]vii. return c

Def perkalian (a0,b0)

viii. Jika len a0 != lenb01. Cetak salah inisialisasi ordeix. Else

1. Menyediakan list matriks kosong untuk c[i,j]2. 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])3. Return c

Def determinan (a0)

#mencari nilai minorx. Menyediakan list kosong (s)xi. For m in range (0,3)1. Proses hapus baris2. Proses hapus kolom3. Memproses nilai n = ((y[0,0]*y[1,1])-(y[0,1]*y[1,0]))4. 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. Menyediakan list kosong (h)xv. For i in range (1,4)1. Memproses u= ((-1)**(1+i))2. Memasukkan nilai u ke list h

#perkalian matriks

xvi. Menyediakan list kosong (c)xvii. 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=01. For q in range(0,3)a. Memproses p=D+c[q]b. D=pxix. Return p

Def menghitung Transpose kofaktor (a0)

i. Menyediakan matriks kosong C=zeros((3,3))ii. Menyediakan matriks kosong Tranpose=zeros((3,3))iii. For i in range (0,3)1. For j in range (0,3)a. M=0#menghapus baris i dan kolom jb. 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. Menyediakan matriks kosong 3x3 (C)v. For i in range (0,3)3. For j in range (0,3)

a. M=0#menghapus baris i dan kolom jb. 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 t3. Return t

Def menghitung invers (a0)

vi. Proses D=0vii. Menyediakan matriks kosong C=zeros((3,3))viii. Menyediakan matriks kosong Tranpose=zeros((3,3))ix. For i in range (0,3)a. For j in range (0,3)i. M=0#menghapus baris i dan kolom jii. 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+Mx. Rumus invers I=(1/(D)*T)

POGRAM UTAMA

i. Startii. Mencetak juduliii. Mengimport nampyiv. Menginisialisasi matriks a = ([[3,3,12],\ [11,8,4],\ [17,9,9]])v. Menginisialisasi matriks b = ([[4,5,8],\ [9,7,9],\[12,16,15]])vi. While True1. Menginisialisasi pilihan1=tambah'2=kurang

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

FLOW CHART

Def penjumlahan

Def penjumlahan

IfLen a0!=le n b0

Cetak salah inisialisasi ordeya

tidak

87Proses rumus penjumlahan :c [i,j]=a0[i,j]+b0[i,j]778For j in range (0,len(a0))Return cFor i in range(0,len(b0))Menyediakan list kosong untuk matriks c

IfLen a0!=le n b0Def penguranganDef pengurangan

Cetak salah inisialisasi ordeya

8For j in range (0,len(a0))For i in range(0,len(b0))Menyediakan list kosong untuk matriks ctidak

Return c

77

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

87

Def perkalian

Def pengurangan

IfLen a0!=le n b0

Cetak salah inisialisasi ordeya

Tidak

Menyediakan list kosong untuk matriks c

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

Return c8

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

77

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

87

Def transpose kofaktor

Menyediakan matriks kosong C=zeros(3,3)

Menyediakan matriks kosong Transponse=zeros(3,3)

For i in range (0,3)

Menghitung kofaktor=((-1)**((i+1)+(j+1)))*mProses hapus kolomB= delete(A,(j), axis=1)Proses hapus baris A= delete(mT,(i), axis=0)M=0ReturnT4For j in range (0,3)

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

4

Def transpose

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

Return tTranpose[j,i]=a[i,j]

Def Kofaktor

Menyediakan matriks kosong C=zeros(3,3)

For i in range (0,3)

For j in range (0,3)

Return t4

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

Menghitung kofaktor=((-1)**((i+1)+(j+1)))*m

C[i,j]=Kofaktor

4

Def Invers

D=0

50D=D+Mm=a[i,j]*KI=(1/D)*T5030For i in range (0,3)20Menginisialisasi C[i,j]=KT[i,j]C[i,j]K=((1)**((i+1)+(j+1)))*mm=(B[0,0]*B[1,1])-(B[0,1]*B[1,0])Menghapus baris dan kolom A= delete(a,(i), axis=0) B= delete(A,(j), axis=1)4020For j in range (0,3)30Mendapat hasil transpose kofaktor40For i in range (0,3)Menyediakan list kosong Cdan list kosong T berorde3x3

2Def determinan

List kosong

For m in range (0,3)

h.append(u)

List kosong c

Proses penghapus baris

List kosong rs.append(n)n=((y[0,0]*y[1,1]))-(y[0,1]*y[1,0])Proses penghapus kolom

For k inrange(0,len(a[0]))

1

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

c.append(T)

Returnp3

Proses D =0

For q in range (0,3)

1D=pP=D+c[q2Proses u = ((-1)**(1+i))1For j in range (1,4)List kosong hr.append(o)Proses o=a[0,j]1For j in range (0,3)

3

FLOW CHART UTAMA

Break Cetak off6While trueinisialisasi matriks a dan bFrom numpy import *Print judul dan identitasSTART

END

Cetak pp=deter minan(a)7elifPilihan ==4Cetak CC=perkalian h(a,b)C=pengurangan h(a,b)elifPilihan ==3elifPilihan ==2Cetak CIf Pilihan ==1Cetak CC=penjumlahan h(a,b)Input pilihaninisialisasi pilihan

elifPilihan ==57

6Cetak II=invers (a)elifPilihan ==8elifPilihan ==7Cetak tt=transpose (a)Cetak CC=kofaktor(a)elifPilihan ==6Cetak TT=transpose (a)