Matriz Utilizando GAUSS SEIDEL C++

Galera Boa tarde Estou com um problema no meu código e queria pedir ajuda. Criei pelo C++ Uma matriz Utilizando GAUSS SEIDEL, Porém quando compilo ele faz a primeira Interação Corretamente, quando Chega na segunda interação os valores não estão corretos.

na linha 129 do meu programa ele multiplica todos os valores da linha por -1 e seu respectivo valor da matriz inicial. A Diagonal principal fica intacta; isso você pode comprovar na hora que aparece a matriz na tela de acordo com a interação feita.

Na interação 2 essa linha 129 não multiplica os valores por -1;
Na interação 3 parece que volta ao normal.

Coloquei meu código no GitHub.

Se puderem Ajudar agradeço muito :smiley:

Ps: Se o código estiver muito sujo, com conteúdo em excesso, aceito ajuda para retirar algo :wink: .

Foto da tentativa:

Acabei conseguindo Resolver o problema irei atualizar os comandos no GITHUB e deixo disponível para vocês. a ideia do programa é calcular matrizes pelo método iterativo de GAUSS SEIDEL e JACOBBI