作业帮 > 综合 > 作业

matlab矩阵元素互换

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/06 00:11:42
matlab矩阵元素互换
matlab将矩阵B中等于-1的元素的值改为A中的相应位置元素的值
A=[1,2,3;3,4,5;6,7,8]
B=[0,-1,-1;5,3,4;-1,3,2]
将矩阵B中等于-1的元素的值改为A中的相应位置元素的值
换了之后,输出B=[0,2,3;5,3,4;6,7,8]
换了之后,输出B=[0,2,3;5,3,4;6,3,2],上面输错了,抱歉
t=(B==-1);
B(t)=A(t);
再问: 如果说用find能写出来么。我正在用find编,有几个元素出错了
再答: ind=find(B==-1); B(ind)=A(ind); 差不多,用find返回的ind是下标,t=(B==-1)返回的是逻辑矩阵,用逻辑矩阵速度快点 要求是B和A的大小相同 而你的问题原来有问题最后B应该是[0,2,3;5,3,4;6,3,2]才对
再问: 换了之后,输出B=[0,2,3;5,3,4;6,3,2],上面输错了,抱歉 请问ind是什么意思?一个任意定义的字母?
再答: 是自己设定的变量,随便给个名字都可以 使用find返回的是符合条件的元素的下标,用英文下标的缩写ind表示 你写成 x=find(B==-1); B(x)=A(x); 也可以