这个代码,怎么跑不出来,我想用它生成三维图
[code][X,Y] = meshgrid(6:12,8:16);
F = X.*Y;
C = true(size(X));
for i = 1:numel(X)
n = X(i);
y = Y(i);
c = 0;
for k = 1:1:n
c = c+(1849000*y + 8600*(k -1 )* x( 2 )^2 + 10*( k - 1 )^2 * x(2)^3)/ ...
((400+(k-1)*x(2))* (24900+860*(k-1)* x(2)+(k-1)^2 * x(2)^2))
end
C(i) = 24-c<=0;
end
minf = min(F(C));
I = find(minf==F&C);
x = X(I)
y = Y(I)
fmin = x*y[/code]
代码已经修改,供参考:
[X,Y] = meshgrid(6:12,8:16);
F = X.*Y;
C = true(size(X));
for i = 1:numel(X)
n = X(i);% 我这里的n就是x(1)
y = Y(i);% 我这里的y就是你的x(2)
c = 0;
for k = 1:1:n
c = c+(1849000*y + 8600*(k -1 )*y^2 + 10*( k - 1 )^2 * y^3)/ ...
((400+(k-1)*y)* (24900+860*(k-1)* y+(k-1)^2 *y^2));
end
C(i) = 24-c<=0;
end
minf = min(F(C));
if(isempty(minf))
fprintf('无解\n')
else
I = find((minf==F)&C);
x = X(I);
y = Y(I);
fmin = x*y;
fprintf('在x=%d,y=%d处目标函数有最小值%d\n',x,y,fmin)
end
答案是无解