MATLAB n阶矩阵高斯顺序消去法代码

n阶高斯顺序消去法的代码如下(高斯列主元消去法可以改改代码,代码比较粗糙,敬请见谅),嗯,如有雷同,纯属巧合:

%n阶矩阵的高斯消去法,matlab程序,gaosi.m
clear,clc

prompt1='输入矩阵的行数\n';
n=input(prompt1)     ;         %输入n阶矩阵

for i=1:n                     %输入矩阵元素
    for j=1:n
        number='input:';
        matrix(i,j)=input(number);
    end
end     
 
for k=1:n                    %定义一个1*n的矩阵,下边会用到
    matrix2(1,k)=0;
end

for j=1:n                         %高斯消元法算法
    for i=(j+1):n
        if(matrix(j,j)~=0)        %除数不为0时,进行各行的计算
           divisor=matrix(i,j)/matrix(j,j);
           matrix(i,:)=matrix(i,:)-matrix(j,:)*divisor;
        else                           %除数为0时,找到当前列中,元素不为0的行数,两者进行交换
            for k=j:n                  %此时用到了上面定义的一行n列的矩阵
                if(matrix(k,j)~=0)     %矩阵行元素进行交换
                    matrix2(1,:)=matrix(j,:);
                    matrix(j,:)=matrix(k,:);
                    matrix(k,:)=matrix2(1,:);
                end
            end
        end
    end
end
matrix                                 %此处无分号,输出最后的矩阵
                                       %可以适当的去处某些代码后边的分号,以观察中间过程

 

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值