我新调试好的程序如下,应该是对的,供参考
" j; \( E! R3 \" F3 Q因为特殊要求,这里的边的长度是二维座标内的空间距离- A- l/ {. m9 J* Q
3 n& f) n6 x8 r
to find-distance
/ u+ W. r$ K2 r' H" ? let i 0
$ o: E4 H# ]1 V$ W let j 0( ~5 E3 m3 z6 l3 p
let nodedistance 0$ ?% z. L* I& Q$ u7 F- j4 L6 Y
let linknumber 0/ ?" M* W) ~3 S0 e( M
$ B" ?+ C! v, I# o/ X while [j < count turtles]
6 B5 S0 Y+ B; J [9 I0 z+ A A& i+ G5 n( u
while [i < count turtles]& c$ c# _# Z1 L& x( K
[ if link-neighbor? turtle i
* |( B, @9 Z" a9 w! i' K# H5 q: i5 { [ask turtle j [set nodedistance nodedistance + distance turtle i]
O& z7 O" S K! \, M- F3 \# h ask turtle j [set linknumber linknumber + count [link-neighbors] of turtle i]
9 ^" m/ ^2 H# K3 y ]
# _3 Y4 K2 g. _, u+ s# ?& i/ V8 s a8 {) O set i i + 1
4 l1 W1 S$ n4 u$ E ]
?0 o- _9 m. H& O$ @" s& T o set j j + 1
6 h7 i9 P! X; L; g8 X# i! T9 q ]
' g( q. y$ U, a, X$ Z set average-path-length nodedistance / (linknumber * 2)
! ~" W7 p& t; k0 G: b0 Uend |