我新调试好的程序如下,应该是对的,供参考
- k' f9 f) [" ?8 [3 y$ O1 g6 D因为特殊要求,这里的边的长度是二维座标内的空间距离
1 s" E5 T6 S) _
2 L' t0 v; {; q( h: C$ Xto find-distance1 P* K2 P! I; D, O
let i 08 j2 {+ r" u1 @# K
let j 0
" z/ h' q+ b) ~2 n1 t$ K" R let nodedistance 0- G' a* p0 s4 w& Z* \+ ?
let linknumber 0
* Z/ Y) ?5 C T, H
4 I7 m9 ~5 U6 x" T while [j < count turtles]( e' |, u& ^0 B$ }, M6 r; M9 U8 ] w8 s1 r) n
[
& {) d' I* d% o! o, t+ ?( n while [i < count turtles]( q/ l& n4 A- R7 `
[ if link-neighbor? turtle i: K7 H z' h* s+ y5 L
[ask turtle j [set nodedistance nodedistance + distance turtle i]
/ S" X% c2 ^+ E) \) {: D ask turtle j [set linknumber linknumber + count [link-neighbors] of turtle i]" z" V; j+ T* S; A) Q1 L
]4 Q, ?/ R% c' }* y4 {
set i i + 1
- |; O' T1 e! l/ Q, r: { ] + l8 h4 H8 H1 K N
set j j + 14 [" ?; A* E! O! V5 V: C
]. f8 E: V$ d S4 n2 w0 ~9 X
set average-path-length nodedistance / (linknumber * 2)
0 i! M* ~3 M# u1 O+ P0 ~" aend |