作业帮 > 综合 > 作业

假如 我有一个 5*5 Matlab 矩阵 A 如下:[1,3,5,12,-5 4,-4,2,-11,9 7,7,4,-

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/07/19 14:57:31
假如 我有一个 5*5 Matlab 矩阵 A 如下:[1,3,5,12,-5 4,-4,2,-11,9 7,7,4,-8,0 8,3,-1,1,5 12,4,-6,1,2]
1.如何生成一个 新矩阵 B,它是由A中所有 负值 变成 正的值,其余正值不变 所得到的 5*5矩阵.请写出 具体程序
2.在做第一个问题的时候,把A中所有的 负值 用矩阵坐标的形式显示出来,如A(1,5)处是一个负数,则使计算机记录[1,5] ,以此类推,直到把所有的负数都找出来为止.最后把这些得到的负数坐标的集合,当做新的矩阵C.
3.以上两步成功以后,如何 单单只利用 矩阵B和C 还原出来 最原先的 矩阵A?
以上必须用 matlab 编程,不用 其他语言.
这个问题很简单:
解法如下:
1,>>B=abs(A);,
这个把A中的所有元素变为正,当然正的元素不变;负的元素全部变为正,第一个问题解决;
2
>>C=A>B(C)=-B(C);
这一步把把B中的坐标和C中1的相同坐标的元素变为负数而对为零的坐标元素不做操作,这时得到的B和A相等: