Esse projeto foi desenvolvido por uma dupla de alunos da UNIFESSPA fruto de um trabalho de disciplina de Cálculo numérico no qual foi necessário realizar a implementação do método utilizando uma linguagem livre. O projeto foi escrito em C e possui:
- TAD;
- Segmentação em funções;
- Alocação dinâmica;
- Ponteiros.
São métodos iterativos ou de aproximação fornecem uma alternativa aos métodos de eliminação. A proposta do método é obter valores que satisfaçam simultaneamente um conjunto de equações.
Cada variável recebe na parte superior um índice que marca o número de interações
O erro é calculado usando o módulo do valor da variável atual menos o valor anterior dividido pelo atual como na fórmula acima.
Inicialmente as variáveis são incializadas com zero, a partir da primeira equação é usado o valor mais atual na equação seguinte.
A imagem acima mostra como ocorre as substituições. O método continua até que o erro calculado seja aceitavel.
A figura acima mostra o protótipo das funções implementadas, seus argumentos e retornos.
O programa possui uma interface terminal como a figura acima.
O uso do programa é feito após o usuário digitar o número de equações no sistema de equação e o erro máximo conforme a imagem acima.
O programa deve retornar o tamanho da matriz que deve ser preenchida, as posições estão na figura acima.
Logo após deve ser inserido cada um dos termos da matriz conforme citado anteriormente;
A matriz acima será usada como exemplo.
O resultado da equação encontrado está presente abaixo.
A diferença entre o resultado real e o encontrado são:
- 3 -> 3,000806
- -2,5 -> -2,499738
- 7 -> 7,000207
- Temos a intenção de usar alguma biblioteca gráfica para obter uma interface gráfica.
- Melhorar a escrita do código através de técnicas de cleanCode.