Para a disciplina de Álgebra Linear e Matricial por Ronan Soares
Matriz Aumentada
Se aij é o pivô de xj
a33 é o pivô de x3
a33 é o pivô de x3
a33 é o pivô de x3
a22 é o pivô de x2
1 é o pivô de x2
1 é o pivô de x2
1 é o pivô de x2
def escalona(M, m, n): i = 0 j = 0 while i < m - 1 and j < n: k = i + 1 if M[i][j] == 0: return "Erro" else: while k <= m - 1 and k <= n - 1: elimina(M[k], M[i], M[i][j]) k = k + 1 i = i + 1 j = j + 1 return M
def escalona(M, m, n): i = 0 j = 0 while i < m - 1 and j < n: k = i + 1 if M[i][j] == 0: return "Erro" else: while k <= m - 1 and k <= n - 1: elimina(M[k], M[i], M[i][j]) k = k + 1 i = i + 1 j = j + 1 return M
if M[i][j] == 0: return "Erro"
if M[i][j] == 0: y = i + 1 while y < m: if M[y][j] != 0: troca(M[i], M[y]) break else: j = j + 1
if M[i][j] == 0: y = i + 1 while y < m: if M[y][j] != 0: troca(M[i], M[y]) break else: j = j + 1
if M[i][j] == 0: y = i + 1 while y < m: if M[y][j] != 0: troca(M[i], M[y]) break else: j = j + 1
if M[i][j] == 0: y = i + 1 while y < m: if M[y][j] != 0: troca(M[i], M[y]) break else: j = j + 1
if M[i][j] == 0: y = i + 1 while y < m: if M[y][j] != 0: troca(M[i], M[y]) break else: j = j + 1
if M[i][j] == 0: y = i + 1 while y < m: if M[y][j] != 0: troca(M[i], M[y]) break else: j = j + 1
Se o candidato é 0, procura outro abaixo...
Se encontrar troca as linhas de lugar...
Se não encontrar passa pra proxima coluna...
Homogêneo sempre tem solução trivial
Solução não trivial só se tem variável livre