function [x]=gauss_bjd(A,b) %建立一个函数(A,b),bjd可以随便取名字 n=size(A,1); %A可以取常数值 for k=1:n-1 %第一个for循环,k的取值范围是1到n-1 for i=k+1:n %第一个子for循环,i的取值范围是k+1到n t=A(i,k)/A(k,k); %给t赋值为下一行除以与它同一列的上一行的元素的值 for j=k+1:n %第二个子for循环,j的取值范围是k+1到n A(i,j)=A(i,j)-t*A(k,j); %下一行的元素值等于它本身减去t乘以它上一行的元素 end %第二个子for循环结束 b(i)=b(i)-t*b(k); %右端列向量从第二行开始等于它本身减去t乘以上一行的元素 end %第一个子for循环结束 end %第一个for循环结束 x(n)=b(n)/A(n,n); %回代过程中xn的取值 for k=n-1:-1:1 s=0; %做一个求和 for l=k+1:n s=s+A(k,l)*x(l); end x(k)=(b(k)-s)/A(k,k); end
作者:TianSL
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/228242.html原文链接:https://javaforall.net
