数据组合问题
数据:
tt.rar
(540 Bytes)
有一二维数组8行8列,为了便于查看数据放在了下表中
根据规则生成下列数据(上面数组中可生成有效数据64条,下面只显示了前28条)
上表中数据的生成规则为:
N1*10000000+N2*1000000+N3*100000+N4*10000+N5*1000+N6*100+N7*10+N8
注:N1-N8均小于8方为有效数据。数据生成方法类似于笛卡尔积。
原来有代码,只是太长了,效率也不是太高,代码大致如下:
FOR j1=1 TO 8
IF Array_Code(j1,1)<8
FOR j2=1 to 8
IF Array_Code(j2,2)<8
FOR j3=1 to 8
IF Array_Code(j3,3)<8
FOR j4=1 to 8
IF Array_Code(j4,4)<8
FOR j5=1 to 8
IF Array_Code(j5,5)<8
FOR j6=1 to 8
IF Array_Code(j6,6)<8
FOR j7=1 to 8
IF Array_Code(j7,7)<8
FOR j8=1 to 8
IF Array_Code(j8,8)<8
DIMENSION Array_Germ_Code(1,6)
D_Germ_Code=Array_Code(j1,1)*10000000+Array_Code(j2,2)*1000000+;
Array_Code(j3,3)*100000+Array_Code(j4,4)*10000+;
Array_Code(j5,5)*1000+Array_Code(j6,6)*100+;
Array_Code(j7,7)*10+Array_Code(j8,8)
D_Diff_Val=Array_Diff(j1,1)*Array_Diff(j2,2)*;
Array_Diff(j3,3)*Array_Diff(j4,4)*;
Array_Diff(j5,5)*Array_Diff(j6,6)*;
Array_Diff(j7,7)*Array_Diff(j8,8)
Array_Germ_Code(1,1)=Try_Help.Card_No
Array_Germ_Code(1,2)=D_Germ_Code
Array_Germ_Code(1,3)=Try_Help.germ
Array_Germ_Code(1,4)=1.00
Array_Germ_Code(1,5)=Try_Help.no
Array_Germ_Code(1,6)=D_Diff_Val
SELECT Temp_Germ_Code
APPEND FROM Array Array_Germ_Code
ENDIF
ENDFOR
ENDIF
ENDFOR
ENDIF
ENDFOR
ENDIF
ENDFOR
ENDIF
ENDFOR
ENDIF
ENDFOR
ENDIF
ENDFOR
ENDIF
ENDFOR
请高人指导
[此贴子已经被作者于2018-8-25 14:18编辑过]