import numpy as np
def gauss_seidel(A, b, n, x_ini=None):
x = x_ini or np.zeros_like(b)
row, col =np.shape(A)
for _ in range(n):
for i in range(row):
x_new = b[i]
for j in range(col):
if i < j:
x_new -= A[i, j] * x[j]
x[i] = x_new/A[i, i]
if i > j:
x_new -= A[i, j] * x[j]
x[i] = x_new/A[i, i]
return x
if __name__ == "__main__":
A = np.array(eval(input()), dtype=float)
b = np.array(eval(input()), dtype=float)
n = int(input())
print(gauss_seidel(A, b, n).tolist())

京公网安备 11010502036488号