匿名用户
1级
2011-10-30 回答
不知道你写的这是什么?死循环……还有,你的0和1的位置有要求吗?最简单的就是这样:
Chrom=zeros(4,6);
Chrom(:,1:2:5)=1;
>> Chrom=zeros(4 , 6)
Chrom =
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
>> Chrom(:,1:2:5)=1
Chrom =
1 0 1 0 1 0
1 0 1 0 1 0
1 0 1 0 1 0
1 0 1 0 1 0
追问:
我的想法是 利用Matlab 生成4行6列的矩阵,要求每行包含0和1.位置随机分布,但要求1的个数各行都一样,比如都是三个。但要求各行1的分布位置不同。
追答:
>> i=1;
Chrom=zeros(4 , 6);
Number=3
m=zeros(1,6);
while i<5
m= randint(1,6);
if sum(m)==Number;
Chrom(i,:)=m;
i=i+1;
end
end
Number =
3
>> Chrom
Chrom &