怎么用MATLAB随机生成一个取值在(5,80)的四阶整数矩阵

怎么用MATLAB随机生成一个取值在(5,80)的四阶整数矩阵MATLAB
2025-03-14 04:41:14
推荐回答(1个)
回答1:

提供一个方法: n=10;%可以改成你想要的数 A=zeros(n); index=randperm(n);%生成随机排列是关键 A((n)*(0:n-1)+index)=1 因为是随机序列,所以每次都不一样,一个结果: A = 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 用循环实在没必要,n较大的时候严重影响计算速度,不过好编程: for k=1:n A(index(k),k)=1 end 效果是一样的,不再啰嗦了。