lingo语言的问题

[复制链接]
查看11 | 回复2 | 2010-5-19 14:23:29 | 显示全部楼层 |阅读模式
可以帮我把下面C语言的代码用LINGO实现吗?
for(i=1;1<=100;i++)
{k=1;
for(j=1;j<=20;j++)
if(x(i,j)!=0)
s(i,k++)=x(i,j);
}
也就是说把x(i,j)里面的非零元素存储在s里面。要求记下下标。谢谢了。

回复

使用道具 举报

千问 | 2010-5-19 14:23:29 | 显示全部楼层
可以的,我一维向量已经做出来了,二维的你再加个循环就好了,下面代码你参考下(y=0表示0元素)sets:gat/1..10/:x,y;endsetsdata:x=0,0,0,1,0,2,1,0,3,0;enddata@for(gat(i):
y(i)=@if(x(i) #ne# 0,i,0);
);
回复

使用道具 举报

千问 | 2010-5-19 14:23:29 | 显示全部楼层
你这个语句对lingo来说很难写 即使能写出 也对lingo的计算没有好处 因为lingo做的最好的还是线性规划 非线性条件加的多了就会有问题 而且记住下标这个lingo貌似没有很好的方法 线性规划算法里面也没有多少对下标操作的
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行