>> x = linspace(0,67,1000);
y = linspace(0,52,100);
z = (2927-3*x-2*y).*(891+x+y);
a=find(z==max(z))
x(a),y(a),z(a)
结果是67 52 2648220
但是明显x=0,y=52时候Z为2662089,比程序算得的最大值还大?
问题出在哪?
确实是笔误,是都是1000,不过问题还是最大值不对。
如果是步长问题,怎么修改解决,求z = (2927-3*x-2*y).*(891+x+y)最大值,约束条件为0<=x<=67,0<=y<=52,x-y<=15