import numpy as np
def gauss_jordan(n, A, B):
# Crear la matriz aumentada
M = [Link]([A, [Link](-1,1)])
for i in range(n):
# Normalización del pivote
M[i] = M[i] / M[i][i]
# Eliminación hacia adelante y atrás
for j in range(n):
if i != j:
M[j] = M[j] - M[j][i] * M[i]
return M
def main():
n = int(input("Ingrese el tamaño del sistema (n): "))
# Crear la matriz de coeficientes y el vector de términos
independientes
A = [Link]((n, n))
B = [Link](n)
print("Ingrese los coeficientes de la matriz A:")
for i in range(n):
for j in range(n):
A[i][j] = float(input(f"A[{i+1}][{j+1}]: "))
print("Ingrese los términos independientes del vector B:")
for i in range(n):
B[i] = float(input(f"B[{i+1}]: "))
# Resolver el sistema utilizando Gauss-Jordan
M = gauss_jordan(n, A, B)
# Mostrar la matriz resultante
print("La matriz resultante después de aplicar el método de GaussJordan
es:")
print(M)
# Mostrar la solución del sistema
print("\nLa solución del sistema es:")
for i in range(n):
print(f"x{i+1} = {M[i, -1]}")
if __name__ == "__main__":
main()