用MATLAB随机生成元素为-5--5的二维矩阵,当矩阵行数大于列数时,将矩阵元素为负值的变为0,

用MATLAB随机生成元素为-5--5的二维矩阵,当矩阵行数大于列数时,将矩阵元素为负值的变为0,当行数小于列数时,将矩阵元素为正值的变为1,当行数等于列数时,将矩阵正对角线元素变为1,负对角线元素变为-1

第1个回答  2013-11-06
a = randint(10,10,[-5 5]);
b = triu(a,1);
b(b<0) = 0;
c = tril(a,-1);
c(c>0) = 1;
m = b+diag(ones(10,1))+c;
n = fliplr(m);
R = triu(n,1)+diag(-ones(10,1))+tril(n,-1);
R = fliplr(R)
相似回答