我新调试好的程序如下,应该是对的,供参考
- S' A6 v! [: e: H: U因为特殊要求,这里的边的长度是二维座标内的空间距离
, ^9 x9 U3 H! a. |) ~0 A4 P: W* Z3 h- P1 x3 V
to find-distance
3 e) c+ X5 Q+ D) t- g' y+ B+ N let i 0
% w7 c% _- h) Z* i, ~9 p! X let j 0
1 @8 w" ~+ O+ t3 q1 F- I, J$ F let nodedistance 01 S% j+ y# {+ m+ Q3 B
let linknumber 06 E- e. q9 J1 r! I
$ g# [* R. }9 J. N/ u/ b while [j < count turtles]
- u( ?& `" a: o* D [3 D1 O/ g1 K, Q6 T* c
while [i < count turtles]9 P* p" E6 i, \% M
[ if link-neighbor? turtle i( i& K: o+ O' B$ J, M
[ask turtle j [set nodedistance nodedistance + distance turtle i]
9 e4 T0 ]& j3 S6 u N; g1 z u ask turtle j [set linknumber linknumber + count [link-neighbors] of turtle i]& s5 u- L4 [; E8 F+ _
]
5 P! U/ }" l# y0 k% o6 E set i i + 1
8 R' Y1 h% u& V/ x: e9 G v/ P& L ]
, U4 N, v4 `$ |% ~7 d: z set j j + 1
+ ?5 s. H) u2 h% L$ r# s ]
8 E: {5 \+ U' \, E. a+ a; f set average-path-length nodedistance / (linknumber * 2)
$ b8 E; D4 o* d: a8 rend |