注册 登录
编程论坛 Matlab

想随机生成一个10×2的矩阵,但要求每一行的元素之和小于10,写到下面就不会了

米粒大小3 发布于 2016-12-04 16:56, 3527 次点击
想随机生成一个10×2的矩阵,但要求每一行的元素之和小于10,写到这就会写了,求大神赐教!!!
x=rand(10,2).*(10-1)+1;
true=constraint(x);


function true=constraint(x)
for i=1:10
    if x(i,1)+x(i,2)<=10
        true(i,1)=1;
    else
        true(i,1)=0;
    end
end
,写到这就会写了,求大神赐教!!!
x=rand(10,2).*(10-1)+1;
true=constraint(x);


function true=constraint(x)
for i=1:10
    if x(i,1)+x(i,2)<=10
        true(i,1)=1;
    else
        true(i,1)=0;
    end
end
1 回复
#2
harleyru2017-08-01 15:44
程序代码:

x=rand(10,2);

y1=randi(9,10,1);

y2=10-y1;

for i=1:10
    y1(i,2)=randi(y2(i));
end

x=x.*y1

1