is9 t) J5 C. f0 [- Y0 }# c% G% K& S
local links,rechts : integer;: X0 K% {4 l, n( x# C
do& K5 c5 t0 I/ H# M. r6 T( k
if @.standort.nf(1).nf(1).voll" _2 \, ~7 O4 D
and @.standort.nf(2).nf(1).voll
/ H- V& G, P7 N and @.standort.nf(3).nf(1).voll
C& U( e. Z) B then
: {5 a0 z+ e* C blockier_merker := TRUE;
+ s7 @/ Z/ C. O! x, _3 s/ } else
& n) h' O; V& C t: n if @.standort.nf(1).nf(1).leer
8 q8 N/ z( r1 B( R! X then
8 K2 U, L/ T; V% _. H @.ziel := "ap4_C";
4 m- Y; _! }9 O% ~/ m9 }5 z0 R @.umlagern(@.standort.nf(1));6 L. C8 r. @4 V& U* C
else7 m) [) z F0 H$ a1 V
links := current.standort.stichE.AnzahlBEs + current.standort.stichD.AnzahlBEs
% B2 U P5 s0 p) b. B + current.standort.zuf_E.AnzahlBEs + current.standort.zuf_D.AnzahlBEs
4 d5 z8 ^" S2 ^1 B + current.standort.ap4_E.AnzahlBEs + current.standort.ap4_D.AnzahlBEs;
( e& ]( i9 I+ s7 k4 \ rechts := current.standort.stichB.AnzahlBEs + current.standort.stichA.AnzahlBEs 7 d- X; f+ I0 u* e" w3 P4 ^
+ current.standort.zuf_B.AnzahlBEs + current.standort.zuf_A.AnzahlBEs
* k, H' g: U+ C$ C F3 w! l4 V$ X- E1 C + current.standort.ap4_B.AnzahlBEs + current.standort.ap4_A.AnzahlBEs;! v* \# p: N9 `' r' d6 K" i
if links > rechts
! F4 J' r8 l( W$ J A' ?9 V then! U/ j4 i2 c3 o& Y# I
if @.standort.nf(3).nf(1).leer) D. A) ~( H$ P8 y
then
9 F- U* a0 G0 t' k D @.umlagern(@.standort.nf(3)); 4 z5 I( S: B4 H% T
else
7 {) m/ \0 ]9 M6 U& |3 ] if @.standort.nf(2).nf(1).leer# \* f7 H7 U; P9 D4 E, J& ~
then
* @' u0 \% d& P" N% L- Q- D$ s @.umlagern(@.standort.nf(2));
9 E1 J+ j T7 x7 @- _ else5 a$ X) e2 n/ y% ?& n
@.umlagern(@.standort.nf(1));
* w- L2 h3 r9 j& Y( s | q# U end;
5 C1 V$ C! `6 X" {. O5 ? end;$ l; _( j/ I7 ?6 X6 k
else
" |) Y! [+ {* m$ W! Z if @.standort.nf(2).nf(1).leer- V8 r: [0 g* w* X5 H
then9 b% T& q& O+ h$ F: p6 v
@.umlagern(@.standort.nf(2));
# t/ h4 \& a p else
6 P% a+ r V- x( i1 `) r8 L if @.standort.nf(3).nf(1).leer
+ Q7 I7 ^9 e6 p' |7 D* i then+ @9 L9 P4 C* H( f9 K8 E5 H0 ^
@.umlagern(@.standort.nf(3));6 Z( L9 Y; A" {) X
else
8 r& Y3 E8 f! }0 U, c4 Q9 \ @.umlagern(@.standort.nf(1));
/ p+ c, K; J! o+ I end;: o) n' `7 w. U$ M1 w; I$ j( M
end;( k0 j5 x! u! g+ E( Q9 A; R
end; 9 N: J9 H. G3 |! B6 Z( B
end;
# j5 m( z7 o, y end;- _: h& U& x6 V0 ?& [2 r) @
if ?.leer
0 y3 [$ b0 d. hthen; f# p: R: H1 j
blockier_merker := false;' v0 R3 D$ v; e/ k
end;/ R1 T7 c% Q f$ D
end;
* e* `8 s& @: D/ F& o. |大家帮忙看看上面的程序是怎样实现分配的,好像用了一个遗传算法的。 |