?? gepivthree1.m
字號:
%列主元消去法程序代碼
clear
clc
Ab=xlsread('data3_1.xls');
[m,nb]=size(Ab); %求行m,列nb
n=nb-1;
A=Ab(:,1:n);
b=Ab(:,nb);
%消元過程
for i=1:m-1
[pivot,p]=max(abs(Ab(i:n,i))); %找出最大值及所在位置
ip=p+i-1;%計算出主元的行下標
if ip~=i %判斷所在行是否在所求數據的第一行
Ab([i ip],:)=Ab([ip i],:); %行交換
end
pivot=Ab(i,i);
for k=i+1:m
Ab(k,i:nb)=Ab(k,i:nb)-(Ab(k,i)/pivot)*Ab(i,i:nb);
end
end
%回代過程
x=zeros(n,1);
x(n)=Ab(n,nb)/Ab(n,n);
i=n-1;
while(1)
x(i)=(Ab(i,nb)-Ab(i,i+1:n)*x(i+1:n,1))/Ab(i,i);
if(i<=1) break;
end
i=i-1;
end
for k=1:n
fprintf('x[%d]=%f\n',k,x(k));
end
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -