3-12 解线性方程组-行列式计算函数编写(2) 手机观看
APP扫描二维码打开
手机使用APP
学习更轻松
/ 350
添加表情
遵守中华人民共和国的各项道德法规,承担因您的行为而导致的法律责任,
本站有权保留或删除有争议评论。 参与本评论即表明您已经阅读并接受上述条款。
全部评论 (共 27 条)
学习达人
一顾倾城坤 展开
function result=my_det2(A)
k=1;
row=size(A,1);
while row~=1

v=find(A(:,1)~=0);
n=length(v);

for h=2:n
A(v(h),:)= A(v(h),:)-A(v(h),1)/A(v(1),1)*A(v(1),:);
end

re(k)=(-1)^(v(1)+1)*A(v(1),1);
k=k+1;
A(:,1)=[];
A(1,:)=[];
row=size(A);
end
result=prod(r
2025年10月10日 21:44
0 回复
学习达人
zjb503 展开
如果把第一行第一列的元素2改为0,用my_det和det分别计算,得到的值不相等,为什么?
2024年02月21日 14:20
1 回复
学习达人
巴扎黑小雨 展开
size函数返回的是一个向量,不是标量.n=size(V),n值是两个数,那么for循环h=2:n,怎么理解?高手给指导一下
2024年01月26日 09:49
0 回复
一顾倾城坤 展开
@ 巴扎黑小雨 他这里函数用的有问题,应该用length函数
2025年10月10日 21:43
@TA
Mrcaptain赵 展开
行列式不是det就能算了吗
2020年02月15日 14:25
3 回复
lanqiaosjtu 展开
我看了4遍,明白了程序的原理和编写步骤,但是有个地方不明白,h=2:n里面,其中2,老师给的解释是因为非0行有3个,所以要执行2次加法操作,但是二阶行列式A=【2 1;0 2】,非零行只有1个,为什么是2呢? 改为1后程序就NaN了,不改结果倒是对的,就是不明白其中原理
2020年04月11日 23:38
2 回复
T-51ase4crs 展开
兄弟上交的?
2021年04月20日 12:03
@TA
QJY玉 展开
V存储的矩阵中的非零行;化简矩阵(所有非零行通过运算变成零行)要从第二个非零行开始,因为要保留一个非零行来做行列式的展开;如果是二阶矩阵,那他就只有一个非零行,按照程序就是不用执行化简的操作,执行后面行列式展开计算的程序即可;实际运算中也是直接用第一个非零行展开就可以了(我的理解是这样的,也可能表述的不是很清楚,互相学习互相帮助提高吧[呲牙])
2020年09月30日 14:52
@TA
u34134397 展开
老师,那个if iszero(A)==0老报错是怎么回事啊?
2018年09月24日 16:49
2 回复
T-a1x91mbvc 展开
@ u34134397 同样遇到了
2021年08月20日 15:41
@TA
u1219174536 展开
@ QJY玉 我也遇到啦,你看看你子函数里end和return是不是反了
2021年03月10日 18:15
@TA
QJY玉 展开
两年后的我遇到了同样的问题[笑哭]
2020年09月30日 16:50
@TA
我的成功之路 更多
V
特惠充值
联系客服
APP下载
官方微信
返回顶部