我新调试好的程序如下,应该是对的,供参考
7 w. Y) p1 }- y7 a& @$ P1 H* W; f因为特殊要求,这里的边的长度是二维座标内的空间距离
. _- `3 S1 b) V' F3 F" C
: e. n; x% R& P4 Eto find-distance
* \" n7 m, V( h$ U; ~# ^& v8 Y let i 0) L) p/ }- T5 O
let j 0
& K7 Q$ [2 }- r9 Z let nodedistance 0
! [8 O, M/ o( C; N" k. Z let linknumber 03 [% C. F# W0 `" P0 D ]
5 y2 D. I6 _, {' d while [j < count turtles]
* S$ p. }" w9 Y& b- |' B/ Y [
- m- s& H5 O9 ]- A& c" z$ p while [i < count turtles]( s+ \' _& V: Y% g) C: b5 L5 J
[ if link-neighbor? turtle i
, M" a0 G: ^' {: ?0 m [ask turtle j [set nodedistance nodedistance + distance turtle i]: T. z4 D, k! h' a* O6 v \/ G
ask turtle j [set linknumber linknumber + count [link-neighbors] of turtle i]0 `9 U( G3 E& b8 q
]0 |- o5 P( c- h' A7 m; t
set i i + 1
4 C: B8 H; i9 E0 B) K( W ]
! \7 y4 ]0 Q8 r set j j + 1
9 h# w# h5 z4 G# D, r, K4 p7 H0 N+ m ]
, K8 E( e6 [1 w5 O) [ set average-path-length nodedistance / (linknumber * 2)- s- {# D1 @9 N& Z
end |