作业帮 > 综合 > 作业

有n个变量x1,x2,.,xn,其中n是你要输入的,并且每个变量x都只能取1或2或3,怎么样在matlab中写个函数,将

来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/04/19 14:06:39
有n个变量x1,x2,.,xn,其中n是你要输入的,并且每个变量x都只能取1或2或3,怎么样在matlab中写个函数,将所有的可能都排出来.
举个例子n=2,
输出
1,1
1,2
1,3
2,1
2,2
2,3
3,1
3,2
3,3
n=3; %变量个数
value=[1,2,3]; %取值
expr='[';
data='[';
for i=1:n
expr=[expr,'x',num2str(i)];
data=[data,'x',num2str(i),'(:)'];
if i==n
expr=[expr,']'];
data=[data,']'];
else
data=[data,','];
end
end
expr=[expr,'=ndgrid([',num2str(value),']);'];
eval(expr)
eval(data)
具体是怎么弄的,你看expr和data的值.
eval实际上只是将expr和data作为表达式来运行.