作业帮 > 综合 > 作业

SETS:JOB/ J1..J4/:PT,POSIT; POSITION/1..11/:OTIME,CTIME;JXP(

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/21 22:58:41
SETS:
JOB/ J1..J4/:PT,POSIT;
POSITION/1..11/:OTIME,CTIME;
JXP( JOB,POSITION):X;
ENDSETS
DATA:
PT = 2 5 7 3;
ENDDATA
@FOR( JOB(I):@SUM( POSITION( K):X( I,K)) = 1);
@FOR( POSITION(K):@SUM(JOB( I):X( I,K))
1.依据你的定义:
【1】 JOB/ J1..J4/:PT,POSIT;
【2】 POSITION/1..11/:OTIME,CTIME;
@FOR(JOB(I):【CTIME(I)】=@sum(POSITION( K)|K #le#POSIT(I):OTIME(K)));
这句中变量CTIME的下标集是POSITION,故@FOR(JOB(I):CTIME(I)...)就有问题咯~
2.根据你前后语句的逻辑,我推测可能是定义错误吧,即误将CTIME定义到POSITION集中;若
估计正确,将其移到JOB集下,即:
【1】 JOB/ J1..J4/:PT,POSIT,CTIME;
【2】 POSITION/1..11/:OTIME;
3.这样仍然有问题,但是如果将限制语句【K #le#POSIT(I)】重新修改,即用一个临时变量
TEMP代替POSIT(I),即@FOR语句中:TEMP=POSIT(I),并在数据DATA部分添加一个初
始化语句:TEMP=0.
具体地:
【1】 DATA:
PT = 2 5 7 3;
TEMP=0;
ENDDATA
【2】 @FOR(JOB(I):
TEMP=POSIT(I);
CTIME(I)=@sum(POSITION( K)|K #le#TEMP:OTIME(K))
);
4.然后可以运算,但遗憾的是,该问题没有可行解.
3.祝好运!