我新调试好的程序如下,应该是对的,供参考
& a+ e1 v( T6 h' ?9 |& N8 y$ j# r因为特殊要求,这里的边的长度是二维座标内的空间距离
8 w1 X' q. J4 x ~6 M" i
5 F( Z, s* `9 \' z% o/ ]# tto find-distance
. z5 i) Y1 b. P6 T% F& W: p let i 0' h7 P: c% m8 D( y1 V. U! _
let j 0: N S' F, a' Y8 |
let nodedistance 0
' s+ H0 f8 K5 {7 f! b' E let linknumber 0! d1 i( @8 E4 d4 ?+ P/ M
5 j. o% Q- V+ i/ y" ?$ B, i! K while [j < count turtles]
& v2 i s/ O+ {7 q+ E [, K) ^; f- g) ]7 O( y7 B! Z6 `
while [i < count turtles]
Y7 t! \; Z' x7 ` [ if link-neighbor? turtle i
8 H4 g, ~5 w- K/ y# @2 i7 ^9 P [ask turtle j [set nodedistance nodedistance + distance turtle i]
3 g; A2 n+ j7 B, a6 Q ask turtle j [set linknumber linknumber + count [link-neighbors] of turtle i]0 o$ V9 t' \" {9 g2 x2 q
]
3 o4 f, _+ `) O set i i + 1& i4 a" F' Y6 i M" a8 H
]
: i; J* S; h9 Q2 u8 ^; t2 N set j j + 1$ `1 k' O9 X- h# ~) f
]; R, }% l. }- g7 U+ D- ?
set average-path-length nodedistance / (linknumber * 2)
+ \/ `2 L/ T$ T L1 nend |