2016-08-01 58 views
0

隨機矩陣我要生成大小的隨機矩陣n個這樣的,它具有小於0.5的元素的相等數目和大於0.5生成在MATLAB與相等數目的小於0.5的值的和大於0.5

+0

只需在[0,0.5)中生成n^2/2個數字,並在[0.5,1)中生成n^2/2個數字。隨機播放整個集合並以任何模式填充矩陣(按行,列方式;無關緊要)。 – sascha

+0

感謝它的工作。 – bilal

回答

3

下面將創建小於0.5,數大於0.5的下一半數量的前半部分的矩陣: -

required= [0.5*rand(n,n/2), 0.5+rand(n,n/2)]; 

編輯: -由於現在你也提到,你想洗牌的數字,添加以下在你的代碼中: -

required=reshape(required(randperm(numel(required))),size(required)) 

請注意,只有當n是偶數時纔可能,因爲偶數的一半也是整數,而奇數的一半不能是整數!