怎么在MATLAB里编写(x1-1)^2+(x2 - 2)^2 + (x3 - 3)^2 +......+ (xn - n)^2 =0的程序编码?谢谢~
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作为表达式来运行。
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作为表达式来运行。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
很显然 x1=1 x2=2 ...... xn=n
如果非要用matlab 那么n应当是一个具体的数字
可以用循环和字符串的相关概念解决
如果非要用matlab 那么n应当是一个具体的数字
可以用循环和字符串的相关概念解决
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
大概就是这样
len=length(x);
sum=0;
for i=1:len
sum=sum+(x(i)-1)^2;
end
len=length(x);
sum=0;
for i=1:len
sum=sum+(x(i)-1)^2;
end
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询