我新调试好的程序如下,应该是对的,供参考
, p: R# b- h/ n因为特殊要求,这里的边的长度是二维座标内的空间距离. _0 Z `2 ]* {2 s. |$ `" J
6 p* j/ `: x( c
to find-distance" W$ I X8 o2 z
let i 05 m: B/ T0 x7 @1 p+ `" B
let j 0
% u2 n4 J; n9 @ let nodedistance 0
* A4 Z" e/ n6 X; S: @7 F let linknumber 0 i, L$ g5 b% _" `0 q) u
# s! h, b$ v: Q. y! U6 n& A while [j < count turtles]
1 Y; k, K( `3 F7 A a6 t* I [
' ?! |* i" f. J! b v' ?/ g while [i < count turtles]. t- s' X7 s3 t& V
[ if link-neighbor? turtle i; z4 z2 y, [+ r2 Z S/ t0 Z9 h
[ask turtle j [set nodedistance nodedistance + distance turtle i]
: A; R2 q# O5 s" L4 M ask turtle j [set linknumber linknumber + count [link-neighbors] of turtle i]
. a& n' P6 t( J3 p3 a ]. D5 B# v( b4 g: L
set i i + 1+ ~# N: }& E0 Z. s% _8 u/ q& k, l
] " M1 O0 z% c! s$ @! ?/ f7 z
set j j + 1
9 S8 `4 d% T6 S6 S# j8 `& K1 X6 Y( b9 V ]- t0 Y$ r2 B" b! v. S0 [* M# N4 u
set average-path-length nodedistance / (linknumber * 2)
6 \/ O6 I- r* l7 I7 g9 g; e. Kend |