作业帮 > 综合 > 作业

lingo中错误代码11,Invalid input .A syntax error has occured.3] I/

来源:学生作业帮 编辑:搜搜考试网作业帮 分类:综合作业 时间:2024/08/01 09:14:13
lingo中错误代码11,Invalid input .A syntax error has occured.3] I/1..4/; ^ 初学者哈
model
sets:
I/1 2 3 4/;
J/1..4/:d;
link(I,J):c,x;
endsets
data:
d=60 70 120 60;
x=70 72 74 76
0 72 74 76
0 0 80 82
0 0 0 76;
min = @sum(link(i,j):c(i,j)*x(i,j));
@for(J(j):
\x05 @sum(I(i)|i#LE#j:x(i,j))=d(j));
@for(I(i):
\x05 @sum(J(j)|j#GE#i:x(i,j))=0;
enddata
end
不好意思哈,中间有一个位置打错了,data中定义的矩阵是对c的定义不是x,但是这不是问题的根本哈
lingo中错误代码11,Invalid input .A syntax error has occured.3] I/
model:
sets:
m/1 2 3 4/;
n/1..4/:d;
link(m,n):c,x;
endsets
data:
d=60 70 120 60;
c=70 72 74 76
0 72 74 76
0 0 80 82
0 0 0 76;
enddata
min = @sum(link(i,j):c(i,j)*x(i,j));
@for(n(j):
\x05 @sum(m(i)|i#LE#j:x(i,j))=d(j));
@for(m(i):
\x05 @sum(n(j)|j#GE#i:x(i,j))=0;
end
再问: 我已经测试过了,是可以通过的哈,最佳答案肯定是你了,但是我还想问问,就是为什么我那样写是错的呢,而且看到这个错误的时候我也试过改成你这样的,只是没有改成m和n而已。至于x>=0被注释掉是因为x本来的限制就是0到正无穷是吧?
再答: model:!漏掉冒号; sets: m/1 2 3 4/;!将I改成m,因为lingo不区分大小写所以集合名用I的话后面下标再用i就会冲突; n/1..4/:d;!将J改成n,同上; link(m,n):c,x; endsets data: d=60 70 120 60; c=70 72 74 76 0 72 74 76 0 0 80 82 0 0 0 76; enddata!将这句移到这边; min = @sum(link(i,j):c(i,j)*x(i,j)); @for(n(j): @sum(m(i)|i#LE#j:x(i,j))=d(j)); @for(m(i): @sum(n(j)|j#GE#i:x(i,j))=0;!lingo默认变量非负可不必约束,而且你这样约束本身也有错; end