LINGO的使用总是出错

来源:百度知道 编辑:UC知道 时间:2024/06/17 07:10:59
model:

sets:
set1/1..45/:y,x,a,b;
endsets

min=@abs(0.9*b(i)-y(i));
@bin(x(i))
@for(set1(i):@sum(set1:y(i))>0.8*b(i));
@for(set1(i):@sum(set1:@if(x(i)#NE#1,0,1)*y(i)))>=5320);

data:
a=@ole('E:\数学建模\2008-08-29 第07次模拟\第七次模拟','H2:H46');
b=@ole('E:\数学建模\2008-08-29 第07次模拟\第七次模拟','B2:B46');
enddata

以上代码中运行时总是显示@for(set1(i):@sum(set1:y(i))>0.8*b(i));
中有语法错误

你的程序可能有几点错误(不知是你复制上去错了还是源程序错误,这可能导致lingo运行不起):首先是:第6行的@bin(x(i))之后没打分号应为@bin(x(i));
还有就是你的@for(set1(i):@sum(set1:y(i))>0.8*b(i));对于集合set1你要么就全省略i要么就不省略,这里在@for(set1(i):@没省略i但是在set1:y(i))>又省略了i可能会出错。还有一个严重错误就是你的整个程序没end。这个lingo肯定运行不出的。