Hello sobat semua pasti penasaran sama Program Matrix kali ini :)
atau ada tugas dari dosen suruh buat program matrix?
Berikut codingan Program Matrix menggunakan Bahasa Pemrograman Python yang berisi :
Determinan, Ekspansi Baris Kolom, Invers, Transformasi, Laplace dan Sarrus.
def menu():
print """
=============================
MENU UTAMA
=============================
1. Matrix 2x2
2. Matrix 3x3
3. Matrix 4x4
4. Matrix 5x5
5. Keluar
=============================
"""
pil = input("Masukkan Pilihan :")
print " "
if pil == 1 :
duadua()
menu()
elif pil == 2 :
tigatiga()
menu()
elif pil == 3 :
empatempat()
menu()
elif pil == 4 :
limalima()
menu()
elif pil == 5 :
keluar()
else :
print "Maaf Pilihan yang anda masukkan tidak terdaftar"
print "Coba lagi ? [Y/N]"
coba = raw_input().upper()
if coba == "Y":
menu()
else:
print "\n"*100
def duadua():
print """
=============================
MATRIX ORDO 2 X 2
=============================
"""
a=int(input("Masukkan nilai Baris 1 Kolom 1 : "))
b=int(input("Masukkan nilai Baris 1 Kolom 2 : "))
c=int(input("Masukkan nilai Baris 2 Kolom 1 : "))
d=int(input("Masukkan nilai Baris 2 Kolom 1 : "))
print "============================="
print "=========PILIH METODE========"
print "1. Invers"
print "2. Determinan"
pm=int(input("Masukkan Metode Pilihan Anda : "))
if (pm == 1):
print "============================="
print "===========Invers============"
print "Matriks : "
print "|", a, b, "|"
print "|", c, d, "|"
print "============================="
b1=b*-1.0
c1=c*-1.0
hasil=(a*d-b*c)
if hasil==0:
print """
| """,d,"""/ 0 """,b1,"""/ 0 |
| """,c1,"""/ 0 """,a,"""/ 0 |
Matrix ini tidak memilikin invers atau di sebut natriks singular
"""
else :
print """
| """,d*(1.0/hasil),""" """,b1*(1.0/hasil),""" |
| """,c1*(1.0/hasil),""" """,a*(1.0/hasil),""" |
"""
print "============================="
elif (pm == 2):
print "============================="
print "Matriks : "
print "|", a, b, "|"
print "|", c, d, "|"
print "============================="
print ("Determinannya adalah : "),(a*d)-(b*c)
print " "
print "Mau Coba lagi ? [Y/N]"
coba = raw_input().upper()
if coba == "Y":
menu()
else:
exit()
def tigatiga():
print """
=============================
MATRIX ORDO 3 X 3
=============================
"""
a=int(input("Masukkan nilai baris 1 kolom 1 : "))
b=int(input("Masukkan nilai baris 1 kolom 2 : "))
c=int(input("Masukkan nilai baris 1 kolom 3 : "))
d=int(input("Masukkan nilai baris 2 kolom 1 : "))
e=int(input("Masukkan nilai baris 2 kolom 2 : "))
f=int(input("Masukkan nilai baris 2 kolom 3 : "))
g=int(input("Masukkan nilai baris 3 kolom 1 : "))
h=int(input("Masukkan nilai baris 3 kolom 2 : "))
i=int(input("Masukkan nilai baris 3 kolom 3 : "))
print "============================="
print "=========PILIH METODE========"
print "1. Sarrus"
print "2. Ekspansi baris kolom"
print "3. Transformasi"
pm=int(input("Masukkan Metode Pilihan Anda : "))
if (pm == 1):
print "============================="
print "===========SARRUS============"
print "Matriks : "
print "|",a,b,c,"|"
print "|",d,e,f,"|"
print "|",g,h,i,"|"
print "============================="
print ("Determinannya Adalah : "),(a*e*i)+(b*f*g)+(c*d*h)-((c*e*g)+(a*f*h)+(b*d*i))
print "============================="
print " "
print "============================="
print "===========PILIHAN==========="
print "1. Hitung Lagi"
print "2. Kembali ke menu"
print "3. Keluar"
pil=int(input("Masukkan Pilihan Anda : "))
print "============================="
if pil==1 :
tigatiga()
elif pil==2 :
menu()
elif pil==3 :
exit()
else:
print('Pilihan Tidak Tersedia')
print " "
print "Mau Coba lagi ? [Y/N]"
coba = raw_input().upper()
if coba == "Y":
menu()
else:
exit()
elif (pm == 2):
print "============================="
print "=======PILIH EKSPANSI========"
print "============================="
print "1. Baris 1"
print "2. Baris 2"
print "3. Baris 3"
print "4. Kolom 1"
print "5. Kolom 2"
print "6. Kolom 3"
pil=int(input("Pilihan : "))
print "============================="
print "===========EKSPANSI=========="
print "Matriks : "
print "|",a,b,c,"|"
print "|",d,e,f,"|"
print "|",g,h,i,"|"
print "============================="
if (pil == 1):
print("Determinannya Jika Menggunakan Baris ke-1 : "),(a*((e*i)-(f*h)))+(-1*b*((d*i)-(g*f)))+(c*((d*h)-(g*e)))
tigatiga
elif (pil == 2):
print("Determinannya Jika Menggunakan Baris ke-2 : "),(-1*d*((b*i)-(c*h)))+(e*((a*i)-(g*c)))+(-1*f*((a*h)-(g*b)))
elif (pil == 3):
print("Determinannya Jika Menggunakan Baris ke-3 : "),(g*((b*f)-(e*c)))+((-1*h)*((a*f)-(d*c)))+(i*((a*e)-(d*b)))
elif (pil == 4):
print("Determinannya Jika Menggunakan Kolom ke-1 : "),(a*((e*i)-(h*f))+((-1*d)*((b*i)-(c*h))+(g*((b*f)-(e*c)))))
elif (pil == 5):
print("Determinannya Jika Menggunakan Kolom ke-2 : "),(-1*b*((d*i)-(g*f)))+(e*((a*i)-(c*g)))+(-1*h*((a*f)-(d*c)))
elif (pil == 6):
print("Determinannya Jika Menngunakan Kolom ke-3 : ",(c*((d*h)-(e*g)))+(-1*f*((a*h)-(b*g)))+(i*((a*e)-(d*b))))
else:
print " Pilihan Anda Tidak Tersedia"
print " "
print "============================="
print "===========PILIHAN==========="
print "1. Hitung Lagi"
print "2. Kembali ke menu"
print "3. Keluar"
pil=int(input("Masukkan Pilihan Anda : "))
print "============================="
if pil==1 :
tigatiga()
elif pil==2 :
menu()
elif pil==3 :
exit()
else:
print('Pilihan Tidak Tersedia')
print " "
print "Mau Coba lagi ? [Y/N]"
coba = raw_input().upper()
if coba == "Y":
menu()
else:
exit()
elif (pm == 3):
def mat():
print"====TRANSFORMASI ELEMENTER===="
a=int(input('Masukkan nilai baris 1 kolom 1 : '))
b=int(input('Masukkan nilai baris 1 kolom 2 : '))
c=int(input('Masukkan nilai baris 1 kolom 3 : '))
d=int(input('Masukkan nilai baris 2 kolom 1 : '))
e=int(input('Masukkan nilai baris 2 kolom 2 : '))
f=int(input('Masukkan nilai baris 2 kolom 3 : '))
g=int(input('Masukkan nilai baris 3 kolom 1 : '))
h=int(input('Masukkan nilai baris 3 kolom 2 : '))
i=int(input('Masukkan nilai baris 3 kolom 3 : '))
def matriks():
print "============================="
print "Matriks : "
print "|",a,b,c,"|"
print "|",d,e,f,"|"
print "|",g,h,i,"|"
matriks()
def trans():
print "============================="
print "====PILIHAN TRANSFORMASI====="
print ('1. H12')
print ('2. K23')
print ('3. H2^(-2)')
print ('4. H21')
print ('5. H32')
print ('6. H31')
print ('7. Mengalikan Kolom dengan skalar')
print ('8. Mengalikan Baris dengan skalar')
print ('9. Keluar')
pil=int(input('Masukkan Pilihan Anda : '))
print "============================="
if (pil==1):
print "|",d,e,f,"|"
print "|",a,b,c,"|"
print "|",g,h,i,"|"
trans()
elif(pil==2):
print "|",a,c,b,"|"
print "|",d,f,e,"|"
print "|",g,i,h,"|"
trans()
elif(pil==3):
print "|",a,b,c,"|"
print "|",d*-2,e*-2,f*-2,"|"
print "|",g,h,i,"|"
trans()
elif(pil==4):
print "|",a,b,c,"|"
print "|",e,d,f,"|"
print "|",h,g,i,"|"
trans()
elif(pil==5):
print "|",a,b,c,"|"
print "|",d,e,f,"|"
print "|",g,h,i,"|"
trans()
elif(pil==6):
print "|",a,b,c,"|"
print "|",d,e,f,"|"
print "|",g,h,i,"|"
trans()
elif(pil==7):
def menkol():
print "===========PILIH============="
print ('1. Kolom 1')
print ('2. Kolom 2')
print ('3. Kolom 3')
print ('4. Menu Utama')
kol=int(input('Masukkan Kolom Pilihan Anda : '))
if (kol==1):
skl=float(input('Masukkan Bilangan Skalar : '))
print "|",skl*a,b,c,"|"
print "|",skl*d,e,f,"|"
print "|",skl*g,h,i,"|"
menkol()
elif (kol==2):
skl=float(input('Masukkan Bilangan Skalar : '))
print "|",a,skl*b,c,"|"
print "|",d,skl*e,f,"|"
print "|",g,skl*h,i,"|"
menkol()
elif (kol==3):
skl=float(input('Masukkan Bilangan Skalar : '))
print "|",a,b,skl*c,"|"
print "|",d,e,skl*f,"|"
print "|",g,h,skl*i,"|"
menkol()
elif (kol==4):
trans()
else :
print ('Pilihan Tidak Tersedia')
menkol()
menkol()
trans()
elif(pil==8):
def menbar():
print "===========PILIH============="
print ('1. Baris 1')
print ('2. Baris 2')
print ('3. Baris 3')
print ('4. Menu Utama')
bar=int(input('Masukkan Baris Pilihan Anda : '))
if (bar==1):
ska=float(input('Masukkan Bilangan Skalar : '))
print "|",ska*a,ska*b,ska*c,"|"
print "|",d,e,f,"|"
print "|",g,h,i,"|"
menbar()
elif (bar==2):
ska=float(input('Masukkan Bilangan Skalar : '))
print "|",a,b,c,"|"
print "|",ska*d,ska*e,ska*f,"|"
print "|",g,h,i,"|"
menbar()
elif (bar==3):
ska=float(input('Masukkan Bilangan Skalar : '))
print "|",a,b,c,"|"
print "|",d,e,f,"|"
print "|",ska*g,ska*h,ska*i,"|"
elif (bar==4):
trans()
else:
print ('Pilihan Tidak Tersdia')
menbar()
menbar()
trans()
elif(pil==9):
print('Terima Kasih')
exit()
else:
print('Pilihan Tidak Tersedia, Silahkan Coba Lagi')
trans()
trans()
mat()
print " "
print "Mau Coba lagi ? [Y/N]"
coba = raw_input().upper()
if coba == "Y":
menu()
else:
exit()
def empatempat():
print """
=============================
MATRIX ORDO 4 X 4
=============================
"""
a=int(input("Masukkan Nilai Baris 1 Kolom 1 : "))
b=int(input("Masukkan Nilai Baris 1 Kolom 2 : "))
c=int(input("Masukkan Nilai Baris 1 Kolom 3 : "))
d=int(input("Masukkan Nilai Baris 1 Kolom 4 : "))
e=int(input("Masukkan Nilai Baris 2 Kolom 1 : "))
f=int(input("Masukkan Nilai Baris 2 Kolom 2 : "))
g=int(input("Masukkan Nilai Baris 2 Kolom 3 : "))
h=int(input("Masukkan Nilai Baris 2 Kolom 4 : "))
i=int(input("Masukkan Nilai Baris 3 Kolom 1 : "))
j=int(input("Masukkan Nilai Baris 3 Kolom 2 : "))
k=int(input("Masukkan Nilai Baris 3 Kolom 3 : "))
l=int(input("Masukkan Nilai Baris 3 Kolom 4 : "))
m=int(input("Masukkan Nilai Baris 4 Kolom 1 : "))
n=int(input("Masukkan Nilai Baris 4 Kolom 2 : "))
o=int(input("Masukkan Nilai Baris 4 Kolom 3 : "))
p=int(input("Masukkan Nilai Baris 4 Kolom 4 : "))
a2412=(-1)*((e*n)-(f*m))
a2413=(e*o)-(g*m)
a2414=(-1)*((e*p)-(m*h))
a2423=(-1)*((f*o)-(n*g))
a2424=(f*p)-(n*h)
a2434=(-1)*((g*p)-(o*h))
m1312=(a*j)-(i*b)
m1313=(a*k)-(i*c)
m1314=(a*l)-(d*i)
m1323=(b*k)-(j*c)
m1324=(b*l)-(j*d)
m1334=(c*l)-(k*d)
print "============================="
print "===========MATRIX============"
print "|",a,b,c,d,"|"
print "|",e,f,g,h,"|"
print "|",i,j,k,l,"|"
print "|",m,n,o,p,"|"
print "===========Laplace==========="
print ('A2412 = '),a2412
print ('A2413 = '),a2413
print ('A2414 = '),a2414
print ('A2423 = '),a2423
print ('A2424 = '),a2424
print ('A2434 = '),a2434
print ('M1312 = '),m1312
print ('M1313 = '),m1313
print ('M1314 = '),m1314
print ('M1323 = '),m1323
print ('M1324 = '),m1324
print ('M1334 = '),m1334
print "============================="
det=(a2412*m1334)+(a2413*m1324)+(a2414*m1323)+(a2423*m1314)+(a2424*m1313)+(a2434*m1312)
print ("Det ="),'(a2412*m1334)+(a2413*m1324)+(a2414*m1323)+(a2423*m1314)+(a2424*m1313)+(a2434*m1312)'
print (" ="),a2412,'*',m1334,'+',a2413,'*',m1324,'+',a2414,'*',m1323,'+',a2423,'*',m1314,'+',a2424,'*',m1313,'+',a2434,'*',m1312
print (" ="),det
print "============================="
print "===========PILIHAN==========="
print "1. Hitung Lagi"
print "2. Kembali ke menu"
print "3. Keluar"
pil=int(input("Masukkan Pilihan Anda : "))
print "============================="
if pil==1 :
empatempat()
elif pil==2 :
menu()
elif pil==3 :
exit()
else:
print('Pilihan Tidak Tersedia')
print " "
print "Mau Coba lagi ? [Y/N]"
coba = raw_input().upper()
if coba == "Y":
menu()
else:
exit()
def limalima():
print """
=============================
MATRIX ORDO 5 x 5
=============================
"""
a=int(input('Masukkan Baris 1 Kolom 1 : '))
b=int(input('Masukkan Baris 1 Kolom 2 : '))
c=int(input('Masukkan Baris 1 Kolom 3 : '))
d=int(input('Masukkan Baris 1 Kolom 4 : '))
e=int(input('Masukkan Baris 1 Kolom 5 : '))
f=int(input('Masukkan Baris 2 Kolom 1 : '))
g=int(input('Masukkan Baris 2 Kolom 2 : '))
h=int(input('Masukkan Baris 2 Kolom 3 : '))
i=int(input('Masukkan Baris 2 Kolom 4 : '))
j=int(input('Masukkan Baris 2 Kolom 5 : '))
k=int(input('Masukkan Baris 3 Kolom 1 : '))
l=int(input('Masukkan Baris 3 Kolom 2 : '))
m=int(input('Masukkan Baris 3 Kolom 3 : '))
n=int(input('Masukkan Baris 3 Kolom 4 : '))
o=int(input('Masukkan Baris 3 Kolom 5 : '))
p=int(input('Masukkan Baris 4 Kolom 1 : '))
q=int(input('Masukkan Baris 4 Kolom 2 : '))
r=int(input('Masukkan Baris 4 Kolom 3 : '))
s=int(input('Masukkan Baris 4 Kolom 4 : '))
t=int(input('Masukkan Baris 4 Kolom 5 : '))
u=int(input('Masukkan Baris 5 Kolom 1 : '))
v=int(input('Masukkan Baris 5 Kolom 2 : '))
w=int(input('Masukkan Baris 5 Kolom 3 : '))
x=int(input('Masukkan Baris 5 Kolom 4 : '))
y=int(input('Masukkan Baris 5 Kolom 5 : '))
det1=(g*((((m*s*y)+(n*t*w)+(o*r*x))-((w*s*o)+(x*t*m)+(n*r*y)))))
det2=(-1)*(h*(((l*s*y)+(n*t*v)+(o*q*x))-((o*s*v)+(l*t*x)+(n*q*y))))
det3=(i*((((l*r*y)+(m*t*v)+(o*q*w))-((o*r*v)+(l*t*w)+(m*q*y)))))
det4=(-1)*(j*(((l*r*x)+(m*s*v)+(n*q*w))-((n*r*v)+(w*s*l)+(m*q*x))))
deta=det1+det2+det3+det4
det5=(f*(((m*s*y)+(n*t*w)+(o*r*x))-((o*s*w)+(m*t*x)+(n*r*y))))
det6=(-1)*(h*(((k*s*y)+(n*t*u)+(o*p*x))-((o*s*u)+(k*t*x)+(n*p*y))))
det7=(i*(((k*r*y)+(m*t*u)+(o*p*w))-((o*r*u)+(k*t*w)+m*p*y)))
det8=(-1)*(j*(((k*r*x)+(m*s*u)+(n*p*w))-((n*r*u)+(k*s*w)+(m*p*x))))
detb=det5+det6+det7+det8
det9=(f*(((l*s*y)+(n*t*v)+(o*q*x))-((o*s*v)+(l*t*x)+(n*q*y))))
det10=(-1)*(g*(((k*s*y)+(n*t*u)+(o*p*x))-((o*s*u)+(k*t*x)+(n*p*y))))
det11=(i*(((k*q*y)+(l*t*u)+(o*p*v))-((o*q*u)+(k*t*v)+(l*p*y))))
det12=(-1)*(j*(((k*q*x)+(l*s*u)+(n*p*v))-((n*q*u)+(k*s*v)+(l*p*x))))
detc=det9+det10+det11+det12
det13=(f*(((l*r*y)+(m*t*v)+(o*q*w))-((o*r*v)+(l*t*w)+(m*q*y))))
det14=(-1)*(g*(((k*r*y)+(m*t*u)+(o*p*w))-((o*r*u)+(k*t*w)+(m*p*y))))
det15=(h*(((k*q*y)+(l*t*u)+(o*p*v))-((o*q*u)+(k*t*v)+(l*p*y))))
det16=(-1)*(j*(((k*q*w)+(l*r*u)+(m*p*v))-((m*q*u)+(k*r*v)+(l*p*w))))
detd=det13+det14+det15+det16
det17=(f*(((l*r*x)+(m*s*v)+(n*q*w))-((n*r*v)+(l*s*w)+(m*q*x))))
det18=(-1)*(g*(((k*r*x)+(m*s*u)+(n*p*w))-((n*r*u)+(k*s*w)+(m*p*x))))
det19=(h*(((k*q*x)+(l*s*u)+(n*p*v))-((n*q*u)+(k*s*v)+(l*p*x))))
det20=(-1)*(i*(((k*q*w)+(l*r*u)+(m*p*v))-((m*q*u)+(k*r*v)+(l*p*w))))
dete=det17+det18+det19+det20
dettot=(a*deta)+((-1)*b*detb)+(c*detc)+((-1)*d*detd)+(e*dete)
print "============================="
print "===========MATRIX============"
print "|",a,b,c,d,e,"|"
print "|",f,g,h,i,j,"|"
print "|",k,l,m,n,o,"|"
print "|",p,q,r,s,t,"|"
print "|",u,v,w,x,y,"|"
print "============================="
print "===Ekspansi baris kolom 1===="
print "Determinan dari Matriks diatas adalah : ","(",a,"*",deta,")","+","(",(-1)*b,"*",detb,"}","+","(",c,"*",detc,")","+","(",(-1)*d,"*",detd,")","+","(",e,"*",dete,")","=",dettot
print " "
print "============================="
print "===========PILIHAN==========="
print "1. Hitung Lagi"
print "2. Keluar"
pil=int(input('Masukkan Pilihan Anda : '))
print "============================="
if pil==1 :
limalima()
elif pil==2 :
exit()
else:
print('Pilihan Tidak Tersedia')
print " "
print "Mau Coba lagi ? [Y/N]"
coba = raw_input().upper()
if coba == "Y":
menu()
else:
exit()
def keluar():
exit()
menu()