MATLAB疑问~ ~

ires = [1, 2, 3, 4; 5, 6, 7, 8; 9, 10, 11, 12];
arr = ires <= 5;
ires(arr) = 0;
ires(~arr) = ires(~arr).^2;
麻烦将这个程序讲一下,我知道用到了矩阵的掩膜,但是还是有点不懂。
就是ires(~arr)代表什么? ~arr得到的是[0,0,0,0;0,1,1,1;1,1,1,1]

ires = [1, 2, 3, 4; 5, 6, 7, 8; 9, 10, 11, 12]; %%初始化矩阵
arr = ires <= 5; %%建立一个与ires结构相同的矩阵 arr,找到矩阵ires中元素小于等于5的位置,置为1,其他的置为0
ires(arr) = 0; %%将小于等于5的位置,全部置为0
ires(~arr) = ires(~arr).^2;%%将元素大于5的位置,全部置为原来的平方
~arr是求arr的反,就是逻辑运算中的非。比如arr(1,1)=1,那么~arr(1,1)=0
要是不清楚的地方可以继续追问。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-12-11
如果安装包和安装过程都没问题的话,一般都是系统主题的原因,请使用系统自带for i=1:500 if error(i)~=0 [b,c]=max(output_test(:,i));
相似回答
大家正在搜