我新调试好的程序如下,应该是对的,供参考# @; g9 E2 g& a: N
因为特殊要求,这里的边的长度是二维座标内的空间距离
% r( l$ z& q3 ]" I
6 b" R/ w ]' Wto find-distance
+ v! K7 B! B% F! ^! r4 P N( c. U let i 0* k& D ]$ D: {4 E5 V& I
let j 0
' }, ]. i9 m; T* y let nodedistance 0
! M) h2 I, R' E$ Y" n2 ~ let linknumber 0( H J+ I1 U; R" @7 i# ^
+ Z, u0 Z1 t& u5 I- W7 i" G
while [j < count turtles]
0 E; P; w. J4 h- o5 T [
7 C) w. |3 y6 Z7 f8 [5 O& N% r* L7 ^ while [i < count turtles]
$ L: F! }9 s4 K4 _. K/ P9 [3 ` [ if link-neighbor? turtle i
, g# a1 t& H. U; J [ask turtle j [set nodedistance nodedistance + distance turtle i]
3 ~" J$ d9 a4 s, J2 ]: f" L ask turtle j [set linknumber linknumber + count [link-neighbors] of turtle i]1 t6 W8 C: J0 m
]! F5 I& ^3 w" T% ]& ~, }( T2 k I
set i i + 13 \' v; S8 ^7 u( q9 d/ ^* s
]
* I# T* m; P5 h/ f# N set j j + 1
0 N* K; j0 k1 F3 m ]
! y% |' \7 v9 a, ^ set average-path-length nodedistance / (linknumber * 2)
x- V$ A! l& U0 N+ aend |