Я хочу использовать исключение Гаусса вперед и назад, так что в конце мне не нужно делать backstubstion, потому что у меня есть везде нули в моей матрице, кроме моей диагонали ..... но что-то есть идет не так, каждый раз, когда я пытаюсь мой код я не получаю все нули в углу, но если я пытаюсь мой код отдельно только вперед работ элиминации и только назад элиминации тоже .....Гаусс вперед и назад устранение
clc, close all, clear *
%Input Matrix
A = input('Enter a matrix: ');
b = input('Enter the result vector: ');
% for example this two:
% A= [1 2 3; 2 1 1; 6 -7 5];
% b= [3; 2; 5];
Ab= [A, b];
%%%%%%%%%% gauss elimination forward & backward elimination%%%%%%%%%%%%%%%
%Forward elimination
% A(1,1) is pivot
factor = A(2,1)/A(1,1);
Ab(2,:) = Ab(2,:) - factor*Ab(1,:);
factor = A(3,1)/A(1,1);
Ab(3,:) = Ab(3,:) - factor*Ab(1,:);
% A(2,2) is pivot
factor = Ab(3,2)/Ab(2,2);
Ab(3,:) = Ab(3,:) - factor*Ab(2,:);
%Backward elimination
% A(3,3) is pivot
factor = A(2,3)/A(3,3);
Ab(2,:) = Ab(2,:) - factor*Ab(3,:);
factor = A(1,3)/A(3,3);
Ab(1,:) = Ab(1,:) - factor*Ab(3,:);
% A(2,2) is pivot
factor = Ab(1,2)/Ab(2,2);
Ab(1,:) = Ab(1,:) - factor*Ab(2,:);
вас очень поблагодарили :) – ECasio
Да! В будущем хороший способ для устранения короткого кода, подобного этому, пытается пройти через него по строкам и увидеть, на каком этапе выход будет отличаться от того, что, по вашему мнению, должно происходить. В этом случае вы заметили бы, когда ваш четвертый фактор неожиданно равен -5. [Вот как я беспокоился об этом] –