6个数组A(),B(),C(),D(),E(),F(),每个数组有10到30个元素(不定),要求如条件:
从A()取一个元素时不按条件,从B()到F()时按条件。
如从B()取时,条件如下:
当MOD(B(I),6)>MOD(A(J),6)就取
当MOD(B(I),6)<MOD(A(J),6)I不取,进入B(I+1)再检测取值,
当MOD(B(I),6)=MOD(A(J)且MOD(B(I),12)=MOD(A(J),12)时,
要求B(I)>A(J)就取,否则不取进入B(I+1)再检测取值,
当MOD(B(I),6)=MOD(A(J)且MOD(B(I),12)>MOD(A(J),12)时,就取
从C()取时,与B(I)比较,
从D()取时,与C(K)比较
从E()取时,与F(N)比较
从F()取时,与E(M)比较
注意:如MOD( * ,6)=0时应令为6,MOD(*,12)=0时应令为12。这样才能好比较。
MOD()为取余函数;EXCEL中的函数。其实就取值是按条件的。不符合条件不要,直到符合为止。新数组设为Y(),那么得到的结果就是Y=(A(j),B(i),C(k),D(m),E(n),F(l)).
其中Y(1)=A(J),Y(2)=B(i),Y(3)=C(K),Y(4)=D(m),Y(5)=E(n),Y(6)=f(l),
条件是(从B()取一个元素时)(四种情况):
1 当(B(i)mod 6)>(A(j) mod 6)就取该元素;
2当(B(i)mod 6)<(A(j) mod 6)时不取,再检测下一个B()元素,直到符合为止;
3 当 (B(i)) mod 6)=(A(j) mod 6)且(B(i)) mod 12)=(A(j) mod 12)时,只要B(i)>A(j) 就取该元素;否则再检测下一个B()元素。
4 当(B(i)) mod 6)=(A(j) mod 6)且(B(i)) mod 12)>(A(j) mod 12)时就取该元素。
同样从C()到F()取元素时,也按上述条件。只是要与前面那个元素比较。从B()取元素要与从A()取得了的元素比较,从C()取元素要与从B()取得了的元素比较,。。。从F()取元素要与从E()取得了的元素比较。这样不是得了一个新数组了吗。