有已完成如下代码,当仅有红色部分时,有部分值因为需要的条件大于QS[I-3]这个范围不能计算到,手工依次增加了如下蓝色部分直至满足天数范围后能够完成计算。 请帮助解决的问题是: 如何通过更简洁的For循环或别的方式,优化修改以下代码,能够实现包括 QS[I-8]及大于8以上天数的范围的计算。谢谢帮助!
FOR I=3 TO DATACOUNT DO
BEGIN
FXDD[I]:=0;
IF QS[I-8]=1 AND QS[I-7]=1 AND QS[I-6]=-1 AND (JGFX[I-1]=-1 OR JGFX[I]=-1) THEN FXDD[I-7]:=1;
IF QS[I-8]=-1 AND QS[I-7]=1 AND QS[I-6]=-1 AND (JGFX[I-1]=-1 OR JGFX[I]=-1) THEN FXDD[I-7]:=1;
IF QS[I-7]=1 AND QS[I-6]=1 AND QS[I-5]=-1 AND (JGFX[I-1]=-1 OR JGFX[I]=-1) THEN FXDD[I-6]:=1;
IF QS[I-7]=-1 AND QS[I-6]=1 AND QS[I-5]=-1 AND (JGFX[I-1]=-1 OR JGFX[I]=-1) THEN FXDD[I-6]:=1;
IF QS[I-6]=1 AND QS[I-5]=1 AND QS[I-4]=-1 AND (JGFX[I-1]=-1 OR JGFX[I]=-1) THEN FXDD[I-5]:=1;
IF QS[I-6]=-1 AND QS[I-5]=1 AND QS[I-4]=-1 AND (JGFX[I-1]=-1 OR JGFX[I]=-1) THEN FXDD[I-5]:=1;
IF QS[I-5]=1 AND QS[I-4]=1 AND QS[I-3]=-1 AND (JGFX[I-1]=-1 OR JGFX[I]=-1) THEN FXDD[I-4]:=1;
IF QS[I-5]=-1 AND QS[I-4]=1 AND QS[I-3]=-1 AND (JGFX[I-1]=-1 OR JGFX[I]=-1) THEN FXDD[I-4]:=1;
IF QS[I-4]=1 AND QS[I-3]=1 AND QS[I-2]=-1 AND (JGFX[I-1]=-1 OR JGFX[I]=-1) THEN FXDD[I-3]:=1;
IF QS[I-4]=-1 AND QS[I-3]=1 AND QS[I-2]=-1 AND (JGFX[I-1]=-1 OR JGFX[I]=-1) THEN FXDD[I-3]:=1;
IF QS[I-3]=1 AND QS[I-2]=1 AND QS[I-1]=-1 AND (JGFX[I-1]=-1 OR JGFX[I]=-1) THEN FXDD[I-2]:=1;
IF QS[I-3]=-1 AND QS[I-2]=1 AND QS[I-1]=-1 AND (JGFX[I-1]=-1 OR JGFX[I]=-1) THEN FXDD[I-2]:=1;
IF QS[I-8]=-1 AND QS[I-7]=-1 AND QS[I-6]=1 AND (JGFX[I-1]=1 OR JGFX[I]=1) THEN FXDD[I-7]:=-1;
IF QS[I-8]=1 AND QS[I-7]=-1 AND QS[I-6]=1 AND (JGFX[I-1]=1 OR JGFX[I]=1) THEN FXDD[I-7]:=-1;
IF QS[I-7]=-1 AND QS[I-6]=-1 AND QS[I-5]=1 AND (JGFX[I-1]=1 OR JGFX[I]=1) THEN FXDD[I-6]:=-1;
IF QS[I-7]=1 AND QS[I-6]=-1 AND QS[I-5]=1 AND (JGFX[I-1]=1 OR JGFX[I]=1) THEN FXDD[I-6]:=-1;
IF QS[I-6]=-1 AND QS[I-5]=-1 AND QS[I-4]=1 AND (JGFX[I-1]=1 OR JGFX[I]=1) THEN FXDD[I-5]:=-1;
IF QS[I-6]=1 AND QS[I-5]=-1 AND QS[I-4]=1 AND (JGFX[I-1]=1 OR JGFX[I]=1) THEN FXDD[I-5]:=-1;
IF QS[I-5]=-1 AND QS[I-4]=-1 AND QS[I-3]=1 AND (JGFX[I-1]=1 OR JGFX[I]=1) THEN FXDD[I-4]:=-1;
IF QS[I-5]=1 AND QS[I-4]=-1 AND QS[I-3]=1 AND (JGFX[I-1]=1 OR JGFX[I]=1) THEN FXDD[I-4]:=-1;
IF QS[I-4]=-1 AND QS[I-3]=-1 AND QS[I-2]=1 AND (JGFX[I-1]=1 OR JGFX[I]=1) THEN FXDD[I-3]:=-1;
IF QS[I-4]=1 AND QS[I-3]=-1 AND QS[I-2]=1 AND (JGFX[I-1]=1 OR JGFX[I]=1) THEN FXDD[I-3]:=-1;
IF QS[I-3]=-1 AND QS[I-2]=-1 AND QS[I-1]=1 AND (JGFX[I-1]=1 OR JGFX[I]=1) THEN FXDD[I-2]:=-1;
IF QS[I-3]=1 AND QS[I-2]=-1 AND QS[I-1]=1 AND (JGFX[I-1]=1 OR JGFX[I]=1) THEN FXDD[I-2]:=-1;