我新调试好的程序如下,应该是对的,供参考
+ \- L# q$ `) w( y9 y( `; F因为特殊要求,这里的边的长度是二维座标内的空间距离
5 G5 c$ M, p# G6 t' s, l( z8 d" R7 B; S/ X2 k. g, o, f
to find-distance3 M3 A0 d9 [/ `4 H1 r$ Y9 o# ]
let i 0( Q+ E! p- q2 V$ e5 l, W. j6 T
let j 0
7 X6 X7 \& {& h' A$ g let nodedistance 0
+ B: T' m/ a( V" U let linknumber 0# h6 W2 Y; P5 [( y& G x: l
6 \; D' U! j. m
while [j < count turtles]5 b( Z4 ~* A/ }2 {2 G" F
[
4 f) [$ u7 A: s- S5 o while [i < count turtles]+ u8 v# y- s6 ?3 T2 W
[ if link-neighbor? turtle i3 E8 L; Q$ c* A0 i) ~
[ask turtle j [set nodedistance nodedistance + distance turtle i]1 V# }4 o: v5 ]6 W/ a5 Q
ask turtle j [set linknumber linknumber + count [link-neighbors] of turtle i]
- |0 g5 p7 I# P3 [' Q H ]
( J# U; z5 |- T2 z: Z' f: h! Z& e" m set i i + 1" ]' X4 U$ _2 i2 o! B/ B, }
] , _# c5 ?; u* y6 `3 L) T6 N
set j j + 1
* A: w' A/ W0 }' J" S ]
( W7 m ]! ^' S4 t! r8 H0 l3 C set average-path-length nodedistance / (linknumber * 2), D& d7 X# U9 {2 R& M
end |