假如 我有一个 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中所有的负值用矩阵坐标的形式显示出来,... 1.如何生成一个 新矩阵 B, 它是由A中所有 负值 变成 正的值,其余正值不变 所得到的 5*5矩阵。 请写出 具体程序

2.在做第一个问题的时候,把A中所有的 负值 用矩阵坐标的形式显示出来,如A(1,5)处是一个负数,则使计算机记录[1,5] ,以此类推,直到把所有的负数都找出来为止。最后把这些得到的负数坐标的集合,当做新的矩阵C。

3.以上两步成功以后,,如何 单单只利用 矩阵B和C 还原出来 最原先的 矩阵A?

好的话我加分,,谢谢!!!!!!!!!!
以上必须用 matlab 编程,,,,,不用 其他语言。。。。
展开
 我来答
ha_2010_ha
2010-11-23 · TA获得超过433个赞
知道小有建树答主
回答量:144
采纳率:0%
帮助的人:196万
展开全部
这个问题很简单:
解法如下:
1,>>B=abs(A);,
这个把A中的所有元素变为正,当然正的元素不变;负的元素全部变为正,第一个问题解决;
2
>>C=A<0 ;
这个C中所有为1的元素记录A中小于0的元素的位置,也就是C 中是1的元素的坐标就是A中小于0的元素的坐标;
3:还原A ,
>>B(C)=-B(C);
这一步把把B中的坐标和C中1的相同坐标的元素变为负数而对为零的坐标元素不做操作,这时得到的B和A相等:
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式