我新调试好的程序如下,应该是对的,供参考4 u* z0 ~. F+ E
因为特殊要求,这里的边的长度是二维座标内的空间距离8 g# `7 U. T- Y1 y0 v
! @7 L7 I, M& l" i4 pto find-distance
3 o3 i7 ]: Y- p$ f( _ let i 0/ r1 v6 m. `2 M5 B. [
let j 0
5 `' |5 I8 ^, a9 F let nodedistance 0+ Q* u$ A, B7 C; y9 |2 F: \. o
let linknumber 0
D/ C+ ^: O. D, z% Q : {; u1 c; V, Y# O7 h- \
while [j < count turtles] A1 Q( d4 ^1 U" a% e
[
* q( Y" B7 H% x while [i < count turtles]6 R& x+ V* T) F* s! I" _
[ if link-neighbor? turtle i% X. c1 L3 k4 B8 N# Y6 z* h. |
[ask turtle j [set nodedistance nodedistance + distance turtle i]7 q# R# k$ Y; ~* d
ask turtle j [set linknumber linknumber + count [link-neighbors] of turtle i]
F S% {) p, s4 | ]. g7 ?3 t7 |" \' I* v
set i i + 1
. }5 E( I' B5 D ]
: g( e% {# A( ?# T2 l$ K set j j + 1
! t% {5 _4 K/ b, B* i" s# ] ]
* i# T @- z2 i* v7 w* U set average-path-length nodedistance / (linknumber * 2)
/ e: V) Q g5 h: t1 L* _8 yend |