这样的lingo程序问题出在哪?
问题描述:
这样的lingo程序问题出在哪?
sets:
time/1..88/:income,A,B,rr;
fixed/1..6/:g;
link(time,fixed):x,y,r,rrr,t;
······
@for(time(i):
@if(t(i,j) #gt# 0,
@sum(fixed(j):y(t(i,j),j)*(1+g(j)*r(t(i,j),j)))=x(i,j);
,x(i,j)=0)
);
······
data部分就省略了,我确认那没问题
答
自己去看@if函数的解释 不要滥用 @if(logical_condition,true_result,false_result)@if 函数将评价一个逻辑表达式logical_condition,如果为真,返回true_ result,否则返回false_result.model:min=fx+fy;fx=@if(x #gt#...@for里面嵌套@if,if的true result为一个@sum求和个人觉得并没有违反要求啊?请你自己仔细看例子 @if作为一个整体返回的是一个数 而不是说两个语句 你写的true result就是个语句 这样能对吗哦,那么类似的分段函数的问题应该如何去表达呢?例子已经写的很清楚了 fx=@if(x #gt# 0, 100,0)这不就是吗