我新调试好的程序如下,应该是对的,供参考
! M" I% M* S5 I因为特殊要求,这里的边的长度是二维座标内的空间距离0 b* M1 E8 G% n& J6 B
4 D# t& G" x- K, P' b# l) `8 W1 \& A
to find-distance
# a; F) w! p* Q7 m9 X) G% q" | w let i 02 U _5 G7 M/ S( l
let j 0
. z3 s: T+ }. _* H/ V let nodedistance 0
3 W; L& {4 J; @5 {6 x let linknumber 0
) f/ S* [2 A0 m ) G z8 y8 r6 k! a7 m
while [j < count turtles]
9 q1 o- x0 d' ], T* w; J; c [
) I5 _5 Q% N1 Z7 G [ while [i < count turtles]7 r9 v$ b0 `: i4 I
[ if link-neighbor? turtle i
7 ~7 ^: r2 q, p* @ [ask turtle j [set nodedistance nodedistance + distance turtle i]
) V, E1 _% u `7 V1 ?1 n ask turtle j [set linknumber linknumber + count [link-neighbors] of turtle i]5 g9 m, @0 u& \* V, a, H2 d3 k
]8 s" p4 `9 v5 W2 T* i6 Q
set i i + 1
3 I. w* i% \4 E4 f4 Y ] 4 a- K. B' L, [ ?# D4 }% {
set j j + 1
' P1 E7 T- v* n* s$ F U# L ]" q" j/ E/ u/ v: W. \
set average-path-length nodedistance / (linknumber * 2)
* M. p% K) M7 y9 z8 J, Bend |