Difference between revisions of "Algoritma python untuk kuis"

From ccitonlinewiki
Jump to: navigation, search
Line 2: Line 2:
 
  [[File:Soal_2.1_no_6.JPG|500px|thumb|left]]
 
  [[File:Soal_2.1_no_6.JPG|500px|thumb|left]]
  
Coding Python untuk penyelesaian soal diatas sebagai berkut :
+
 
[[File:Algoritma_1.JPG|1000px|thumb|left]]
+
 
[[File:Algoritma_2.JPG|1000px|thumb|left]]
+
Coding Python untuk penyelesaian soal diatas sebagai berkut :
[[File:Algoritma_3.JPG|1000px|thumb|left]]
+
[[File:Algoritma_1.JPG|1000px|thumb|left]]
 +
[[File:Algoritma_2.JPG|1000px|thumb|left]]
 +
[[File:Algoritma_3.JPG|1000px|thumb|left]]
 +
 
 +
 
 +
 
 +
 
 +
 
 +
Berikut ini adalah algoritmanya :
 +
from numpy import array, zeros
 +
a = array([[0,0,2,1,2],\
 +
          [0,1,0,2,-1],\
 +
          [1,2,0,-2,0],\
 +
          [0,0,0,-1,1],\
 +
          [0,1,-1,1,1]])
 +
b = array([[1],\
 +
          [1],\
 +
          [-4],\
 +
          [-2],\
 +
          [-1]])
 +
c = zeros((5,6)) # ini dilakukan untuk menyusun matrik a dan matrik b menjadi satu matrik 5 x 6
 +
for j in range(0,5) :
 +
    for i in range (0,5):
 +
        c[j][i]=a[j][i]
 +
for j in range (0,5):
 +
    c[j][5]=b[j][0]
 +
 
 +
d = zeros((5,6)) # langkah ini dilakukan untuk menyusun baris dari matrik c menjadi terstruktur seperti eliminasi gauss
 +
d[0]=c[2]
 +
d[1]=c[1]
 +
d[2]=c[4]
 +
d[3]=c[0]
 +
d[4]=c[3]
 +
 
 +
# Langkah dibawah dilakukan untuk Operasi Baris Elementer matrik c
 +
n = len (d)
 +
for j in range (1,n):
 +
    m=d[j][0]/d[0][0]
 +
    for i in range (0,n+1):
 +
        d[j][i]=d[j][i]-m*d[0][i]
 +
for j in range(2, n):
 +
    m = d[j][1]/d[1][1]
 +
    for i in range(1,n+1):
 +
        d[j][i]=d[j][i]-m*d[1][i]
 +
for j in range(3, n):
 +
    m = d[j][2]/d[2][2]
 +
    for i in range(1,n+1):
 +
        d[j][i]=d[j][i]-m*d[2][i]
 +
for j in range(4,n):
 +
    m = d[j][3]/d[3][3]
 +
    for i in range(1,n+1):
 +
        d[j][i]=d[j][i]-m*d[3][i]
 +
 
 +
# Langkah dibawah dilakukan untuk back substitution demi mendapatkan hasil x1, x2. x3, x4, dan x5
 +
X = zeros((n, 1))
 +
X[n - 1][0] = d[n-1][n]/d[n-1][n-1]
 +
for j in range(n-2,-1,-1):
 +
    S=0
 +
    for i in range(j+1,n):
 +
        S = S + d[j][i]*X[i][0]
 +
        X[j][0] = (d[j][n]-S)/d[j][j]
 +
 
 +
print(X)

Revision as of 13:21, 17 October 2019

Problem set 2.1 no 6 hal 55 (buku "Numerical Methods in Engineering with Python 3")

Soal 2.1 no 6.JPG


Coding Python untuk penyelesaian soal diatas sebagai berkut :
Algoritma 1.JPG
Algoritma 2.JPG
Algoritma 3.JPG



Berikut ini adalah algoritmanya :

from numpy import array, zeros
a = array([[0,0,2,1,2],\
          [0,1,0,2,-1],\
          [1,2,0,-2,0],\
          [0,0,0,-1,1],\
          [0,1,-1,1,1]])
b = array([[1],\
          [1],\
          [-4],\
          [-2],\
          [-1]])
c = zeros((5,6)) # ini dilakukan untuk menyusun matrik a dan matrik b menjadi satu matrik 5 x 6
for j in range(0,5) :
   for i in range (0,5):
       c[j][i]=a[j][i]
for j in range (0,5):
   c[j][5]=b[j][0]
d = zeros((5,6)) # langkah ini dilakukan untuk menyusun baris dari matrik c menjadi terstruktur seperti eliminasi gauss
d[0]=c[2]
d[1]=c[1]
d[2]=c[4]
d[3]=c[0]
d[4]=c[3]
# Langkah dibawah dilakukan untuk Operasi Baris Elementer matrik c
n = len (d)
for j in range (1,n):
   m=d[j][0]/d[0][0]
   for i in range (0,n+1):
       d[j][i]=d[j][i]-m*d[0][i]
for j in range(2, n):
   m = d[j][1]/d[1][1]
   for i in range(1,n+1):
       d[j][i]=d[j][i]-m*d[1][i]
for j in range(3, n):
   m = d[j][2]/d[2][2]
   for i in range(1,n+1):
       d[j][i]=d[j][i]-m*d[2][i] 
for j in range(4,n):
   m = d[j][3]/d[3][3]
   for i in range(1,n+1):
       d[j][i]=d[j][i]-m*d[3][i]
# Langkah dibawah dilakukan untuk back substitution demi mendapatkan hasil x1, x2. x3, x4, dan x5
X = zeros((n, 1))
X[n - 1][0] = d[n-1][n]/d[n-1][n-1]
for j in range(n-2,-1,-1):
   S=0
   for i in range(j+1,n):
       S = S + d[j][i]*X[i][0]
       X[j][0] = (d[j][n]-S)/d[j][j]
print(X)