我新调试好的程序如下,应该是对的,供参考
% X, |# E& M/ e7 Q- W, S! `因为特殊要求,这里的边的长度是二维座标内的空间距离" e1 x }( ^) a# L
n2 u% e( d0 ]7 kto find-distance" o2 v2 [4 R5 q4 j p
let i 0
$ [7 A/ O7 V$ M; ^ let j 0: p# [, S# l4 i, |; c
let nodedistance 0
9 V H- i6 R, o5 }8 f let linknumber 0
Y1 R( k: s4 k9 W. O - b: @- H' Y5 u& c. b2 E/ {
while [j < count turtles]
2 c* t4 A- t8 [4 D; _& k+ [# {1 W [7 x* S9 b8 V1 [% y/ X& o" v; k
while [i < count turtles]! C# U, U- F9 B" C2 m4 R' n( X
[ if link-neighbor? turtle i
8 D7 M( {3 \% ]# M7 Q$ c1 h. m [ask turtle j [set nodedistance nodedistance + distance turtle i]
; p( f5 _1 [4 m. W X# ~/ z ask turtle j [set linknumber linknumber + count [link-neighbors] of turtle i]
v% b1 f D: J8 N0 _' U+ g6 L9 k ]: y) c% i# I/ ^
set i i + 1/ A3 Z1 C! S, i# ^' j( G
]
9 `. r7 u- \6 C9 W9 K7 a+ k: Y set j j + 1 {9 H. S, o3 M! H) C* ^# z
]
- f) I* Y& X7 K/ O* | set average-path-length nodedistance / (linknumber * 2)
7 ~: O4 H* s! a) o* rend |