我新调试好的程序如下,应该是对的,供参考
& E6 [7 e' e" n因为特殊要求,这里的边的长度是二维座标内的空间距离5 b$ X, x. s2 D: q7 \4 V
/ C/ E& s1 z* A! h B1 J
to find-distance
, |. X" u3 A _% K let i 01 R2 S$ ^3 c8 E) E2 X$ \
let j 03 {) g$ ^0 L0 N c1 D9 w, H
let nodedistance 05 z" ]. Y, z8 d6 Y8 P
let linknumber 0
, y# I& i c2 R$ T8 W' B- I
8 N# S$ Y0 @4 [5 J+ E, {* } w while [j < count turtles]
5 J/ X7 H5 I* Z [ A! I. X& s& [2 J+ ^; ]
while [i < count turtles]
4 D% M1 s' Q" w [ if link-neighbor? turtle i L3 K' ?& l4 U: t: u
[ask turtle j [set nodedistance nodedistance + distance turtle i]
5 r7 Y! j0 k, Z4 S" z8 j ask turtle j [set linknumber linknumber + count [link-neighbors] of turtle i]
# b( R1 w$ {$ E- M ]& l5 G$ y0 q D8 W! w: L
set i i + 1
9 u0 p* n$ [+ ~& x$ X. V4 K$ X" D ]
* q$ V* x4 X" j7 d. N* t# i set j j + 1
* @, a6 f# O3 R+ R8 V. H' j6 Z' N ]! J, E$ u8 u, k- P
set average-path-length nodedistance / (linknumber * 2)# O2 E/ F' G/ S7 x0 p
end |