我新调试好的程序如下,应该是对的,供参考
6 T z1 X" E+ b- c8 }因为特殊要求,这里的边的长度是二维座标内的空间距离# ]) y6 D6 B* _
0 ^% H4 D- f) Oto find-distance
1 J) d2 H3 q5 u: X3 p+ \ let i 0" d/ Z9 v& a" D" z$ ?- |
let j 0# g( W( h) \0 g# k$ ^
let nodedistance 0
, [) D- t& g: y$ k5 Q5 v7 t% Q let linknumber 0
! ?. h2 J7 V9 x) L6 r! W % q" b ~5 y5 X7 p6 U7 h
while [j < count turtles]
, R, W6 s9 W, A2 F! q- ^ [
% v; l! h2 Z1 |. n. [6 Z while [i < count turtles]- e! x2 y* ~" X9 ~$ @3 F. I
[ if link-neighbor? turtle i+ M6 A7 M' I& j. m; b$ Y! {" Y
[ask turtle j [set nodedistance nodedistance + distance turtle i]2 _; i- N- x" J' e0 h3 A5 ]/ r
ask turtle j [set linknumber linknumber + count [link-neighbors] of turtle i]* ?# K* S3 {7 z4 r7 s( w& F
]
$ a* a2 ^+ J" R4 w. | set i i + 1* L+ I" r6 U1 ~8 e
]
' F9 M! ?, Q% _; @ set j j + 1% v) s9 N, H/ J. C
], k, M- L% b8 \9 ~! M+ U$ T: m
set average-path-length nodedistance / (linknumber * 2). y! b, @; Y: c) }
end |