Sie sind auf Seite 1von 2

#################################################

# UNIVERSIDADE ESTADUAL DA PARABBA #


# CURSO DE COMPUTAO #
# EQUIPE: #
# KLEYTON KLAUS GUEDES DE SOUZA #
# DIEGO
# LCIO
#
##################################################
#ELIMINAO GAUSS DIRETA #
##################################################

def troca_linha (data,x,y):


data[x], data[y] = data[y], data[x]
return data

##def multiplica_matriz(m ,multi,linha):


# for i in range(0,len(m[0])):
# m[linha][i] = m[linha][i]*multi
# return m

def imprime_matriz(matriz):
for i in range(len(matriz)):
for j in range(len(matriz[0])):
print (matriz[i][j],'\t',end = '')
print()

def gauss(a,b):

print("\n")
n = len(b)
for k in range (0, (n-1)):
for i in range ((k+1), n):
if a[k][k] == 0:
a = troca_linha(a,k,k+1)
b = troca_linha(b,k,k+1)
else:
if a[i][k]!= 0:
mult = a[i][k]/a[k][k]
for j in range(n):
a[i][j] = a[i][j] - (a[k][j]*mult)
b[i] = b[i] - (b[k]*mult)

return matriz_solucao(a,b)

def matriz_solucao(a,b):

n = len(a[0])
matriz_coef =[0.0]*n

for i in range(n):
if a[n-i-1][n-i-1] != 0.0:
soma = 0.0
for j in range(n):
if n-i-1 !=j:
soma = soma + a[n-i-1][j]*matriz_coef[j]
matriz_coef[n-i-1] = ( b[n-i-1] - soma ) / a[n-i-1][n-i-1]
return matriz_coef
#a = [1.0/8,2.0/10,2.0/5],[3.0/8,5.0/10,3.0/5],[4.0/8,3.0/10,0]
#b = [2.3,4.8,2.9]

a = [[0, 1, 5],
[2, 6, -1],
[4, -3, 2]]
b = [8,9,11]

print(gauss(a,b))

Das könnte Ihnen auch gefallen