ge.py 904 Bytes
# 59110440354
# นายฤทธิชัย บุดดาเคน
def ge(A,b):
    import numpy as np
    A =np.array(A,float)
    b =np.array(b,float)
    n=len(b)
    for k in range(0, n-1):
    #print('k =',k)
        for i in range(k+1, n):
            if A[i,k] != 0.0:
                lam = A[i,k]/A[k,k]
                A[i,k] = 0
                A[i,k+1:n] = A[i, k+1:n] - lam*A[k,k+1:n]
                b[i] -= lam*b[k]
    x = b.copy()
    for k in range(n-1, -1, -1):
        x[k] = (b[k] - np.dot(A[k,k+1:n], x[k+1:n]))/A[k,k]
    print(x)

def solve(A,b):
    import  numpy.linalg
    result=numpy.linalg.solve(A,b)
    for i,x in zip(range(len(result)),result):
        print('x_{}={}'.format(i,x))
# mxn
m,n,_ = map(int,input().split('x'))
print(m,n)
A=[]
for i in range (m):
    A.append(list(map(int,input().split(','))))
print(n,_)
b=list(map(int,input().split(',')))

solve(A,b)