is- _' h" D/ K' @; _, g9 R
local links,rechts : integer;
0 _) O% n9 X) f' D0 X" m8 Hdo1 K) R1 u0 ^9 p+ u. H* B
if @.standort.nf(1).nf(1).voll
0 v" Q" `( _- v" H0 I4 K/ p and @.standort.nf(2).nf(1).voll
+ A! I( _ E; q+ X/ Y and @.standort.nf(3).nf(1).voll
( P! j* h3 j2 ] then
8 b$ b% k4 u- q5 }! H; Q- ~ blockier_merker := TRUE;
' h0 J" ~! F, P9 T! J7 E else
2 ^% g( m3 l$ Y! ^ if @.standort.nf(1).nf(1).leer; z7 K1 N/ a- d* n
then! T% _8 _" ^- u8 j0 P( D0 W
@.ziel := "ap4_C";) w0 [/ z* l% i# o- Q
@.umlagern(@.standort.nf(1));. ?/ V: n4 e1 T8 F( H9 J2 x
else- I2 Q7 p3 ^) I0 {# P( A
links := current.standort.stichE.AnzahlBEs + current.standort.stichD.AnzahlBEs
. X1 [& K* @8 `5 `; w + current.standort.zuf_E.AnzahlBEs + current.standort.zuf_D.AnzahlBEs
) B7 D! H* _$ U+ Z + current.standort.ap4_E.AnzahlBEs + current.standort.ap4_D.AnzahlBEs;& N6 n6 F2 Q# ]9 A0 W6 P5 h4 B
rechts := current.standort.stichB.AnzahlBEs + current.standort.stichA.AnzahlBEs
/ ]( T' }$ l8 w+ b7 R0 `3 Y* i + current.standort.zuf_B.AnzahlBEs + current.standort.zuf_A.AnzahlBEs
1 j Y1 z9 S0 _ |, \$ y+ s" w + current.standort.ap4_B.AnzahlBEs + current.standort.ap4_A.AnzahlBEs;: d0 g1 h3 ]& h( s( A) A) p
if links > rechts
2 M r* F2 i! Q B1 d7 V then% ^3 B( z; b- g& ]( w; ~6 i, F
if @.standort.nf(3).nf(1).leer& R8 M4 U! h2 D' W, H
then1 F5 w& J B2 Y$ b. j" \
@.umlagern(@.standort.nf(3)); * N; M8 w1 ^4 j _
else% X7 @( [: e& D1 l" W7 t- a
if @.standort.nf(2).nf(1).leer s( O/ D2 S( W+ I
then: B3 F% ^) o9 v& `4 y1 _# G" e
@.umlagern(@.standort.nf(2));; J! }: z, h. v" T
else
, h+ j& q2 o8 b% s @.umlagern(@.standort.nf(1));. s8 b, ]" C" Q. g) h
end;: g' y; u2 L. k+ f
end; O9 Q' [5 x8 s! _# e M( \3 Z
else ) G# C; N' i _% s$ i
if @.standort.nf(2).nf(1).leer
c0 H% `& B! y) m* Q* F then( Q' J, E! \4 H$ R$ K1 t
@.umlagern(@.standort.nf(2)); 5 M% t6 |- X, V1 e% f: o" ?& E5 O- [
else
9 E1 I3 t- k/ X9 d; B& g/ b if @.standort.nf(3).nf(1).leer
" D, v" e; c$ G* T$ K% @ then
P- ], l3 A$ v8 O, u) s5 B" e, [ @.umlagern(@.standort.nf(3));4 v6 X$ w, a! y$ N" N% ^$ N
else
/ i+ w# o5 W3 Y7 N @.umlagern(@.standort.nf(1));
4 F- F, i1 p( S* R6 ~; s end;
9 x- x# C6 x# j# [, _% C; a8 k Q& X end; j2 [" I% a5 t
end;
9 g4 i4 N8 w% a end;8 b# q7 y* I) |3 L* I# S+ k
end;
& |9 k2 _- G% Iif ?.leer* g: u6 J+ J% c, G7 w! r( D' S
then
; d( T3 _- Y9 A/ T blockier_merker := false;- K0 g2 F3 D& V `) u& o
end;
) ?3 ?( B, `; |6 |+ t3 u1 ?) \1 Nend;
2 j' _7 S4 ^0 l" Z- c大家帮忙看看上面的程序是怎样实现分配的,好像用了一个遗传算法的。 |