我新调试好的程序如下,应该是对的,供参考% L0 C2 M+ {2 q8 u) {7 h% T
因为特殊要求,这里的边的长度是二维座标内的空间距离
( V# e G( P: w6 o6 U8 K
. Z+ l T: q( d- g8 p7 Uto find-distance X9 H4 U5 _. d5 F4 H$ X
let i 09 e% x3 d6 O) n2 O: y) m, ?6 E# _
let j 0+ [! z! h& @1 m, Q) v4 |0 z. _% q5 A
let nodedistance 0
2 ~0 G4 b) m, l5 u% a) N9 K let linknumber 0: ~% T2 y; r4 ^! r
N) a e- H9 N' R, K while [j < count turtles]
: Z5 @3 I h- _( k [1 J6 m8 M/ ?% s$ p8 P; v+ T% S
while [i < count turtles]
3 b0 z1 L2 O: N* z [ if link-neighbor? turtle i
3 U; ^4 Z5 c- @( K4 N [ask turtle j [set nodedistance nodedistance + distance turtle i]) j) C6 @1 s, S8 w2 X; S. [
ask turtle j [set linknumber linknumber + count [link-neighbors] of turtle i]* x7 [/ r O0 H
]( Z* b! S% l: s3 e
set i i + 11 x; X' g9 c8 \, Z' @. ^
]
! a) T# X. q. x8 ~: d6 |# u$ t, O set j j + 15 F, Q% e9 m4 B, M/ S- J& s
]+ `8 Z1 h, I" @9 K# k; C% |
set average-path-length nodedistance / (linknumber * 2)# f% @. t# [7 a
end |