数学建模社区-数学中国

标题: 初学lingo,程序小问题,但就是不懂 [打印本页]

作者: Lyzion_    时间: 2013-1-23 15:05
标题: 初学lingo,程序小问题,但就是不懂
model
sets:
point/1..800/;
endsets
min=p1;
(200/n*@sum((1+0.02829)^point(i))+5*800)/(0.1164021*@sum(1+0.02829)^point(i))+p1*155.532*@sum(1+0.02829)^point(i))<=1;
end
错误是:
Error Code
           11
Error Text:
  Invalid input. A syntax error occurred
   3] point/1..800/;

未命名.jpg (9.22 KB, 下载次数: 289)

错误

错误


作者: 守望流星雨    时间: 2013-1-23 16:56
在point后面要加上属性,像这样子point/1..800/:a;
你看看lingo的书吧,看看就会懂了
作者: Lyzion_    时间: 2013-1-23 17:42
非常感谢,非常感谢
作者: Lyzion_    时间: 2013-1-23 17:46
守望流星雨 发表于 2013-1-23 16:56
在point后面要加上属性,像这样子point/1..800/:a;
你看看lingo的书吧,看看就会懂了

我加了属性了还是同样的错误
作者: 宇宙第一    时间: 2013-1-23 18:03
不加属性也可以,但是你的point(i)表示的是集point的第i个成员,没有值啊!
作者: 叫姐姐    时间: 2013-1-23 18:05

作者: Lyzion_    时间: 2013-1-23 18:28
宇宙第一 发表于 2013-1-23 18:03
不加属性也可以,但是你的point(i)表示的是集point的第i个成员,没有值啊!

那请问要求(1+0.02829)的从1到800次方的和改怎么表示啊
作者: 宇宙第一    时间: 2013-1-23 20:29
Lyzion_ 发表于 2013-1-23 18:28
那请问要求(1+0.02829)的从1到800次方的和改怎么表示啊


model:
sets:
point/1..800/;
endsets
sum=@sum(point(I)|I#le#800:(1+0.02829)^I);
end
写的有点复杂,这种用matlab求最好~~~
作者: 宇宙第一    时间: 2013-1-23 20:30
额,那个表情是:(
作者: Lyzion_    时间: 2013-1-23 22:07
非常感谢非常感谢
作者: Lyzion_    时间: 2013-1-23 22:10
宇宙第一 发表于 2013-1-23 20:29
model:
sets:
point/1..800/;

非常感谢你啊,呵呵
作者: 1097908652    时间: 2013-1-24 11:20
这里你求出来的p1应该是0 因为默认是大于等于0 的。不知题目是否要求加@free。另外,800 个幂运算好大,你的lingo不一定可以满足
作者: 传奇¥_Zeus    时间: 2013-1-24 21:26
问一个很低智商的问题,n在里面表示啥?还有,你的(200/n*@sum((1+0.02829)^point(i))+5*800)/(0.1164021*@sum(1+0.02829)^point(i))+p1*155.532*@sum(1+0.02829)^point(i))<=1;
多了半个括号,你在lingo里找找




欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5