2、if语句问题,应使用三重判断(即多重判断)语句解决。多重判断,就是把原来函数的第三个参数用新的IF函数替换,增加举纯一重判断。
以上程序错误明显,2+5+2=9人,而题目是6人。解:
用xi表示某一首逗市场推销员人数,
则派遣方案的总收益为:
c1(x1+1) + c2(x2+1) + c3(x3+1)①
本题即:
在
x1 + x2 + x3 = 6 ②
的约束条件下,
求①的最大值。
下面是孝芹巧MATLAB求解程序,该程序也很容易转换成巧键其它语言。
% 市场推销员人数与收益的关系
c1=[0 60 80 105 115 130 150]
c2=[0 65 85 110 140 160 175]
c3=[0 75 100 120 135 150 180]
n = 6 % 市场推销员人数
max = 0% 最大总收益初值
for x1 = 0:n
for x2 = 0:n
x3 = n - (x1 + x2)
if x3>=0
total = c1(x1+1) + c2(x2+1) + c3(x3+1)
if total >= max
max = total
z1=x1z2=x2z3=x3
end
end
end, end
max % 最大总收益
x = [z1, z2, z3] % 使总收益最大的人员派遣方案
计算结果:
max = 275
x = 1 4 1
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)