我新调试好的程序如下,应该是对的,供参考+ }4 n/ ^. l1 ^' Q$ c
因为特殊要求,这里的边的长度是二维座标内的空间距离
, N; _9 O1 X8 z( C3 N
3 A8 t" ]* M8 `" a4 Yto find-distance
2 @( P0 ~8 w: Q2 | let i 0
/ k) s9 f& P; P h5 d x" b let j 04 _$ }8 N6 O, p5 u- b* a
let nodedistance 0
+ u6 Q& F4 G b$ _ let linknumber 0/ s7 Y4 q, M5 k! U
/ J: \' _ [2 m4 z& c, R: u8 y8 ? while [j < count turtles]7 [2 \9 D6 w1 n. e% D) J
[1 E2 B" M, u: K) X. k a
while [i < count turtles]9 T$ Z) B; z; ^8 e0 S$ `# p
[ if link-neighbor? turtle i
! ~1 u' N* D! j- R [ask turtle j [set nodedistance nodedistance + distance turtle i]: p- K" p a9 A1 T- O8 K' _. n
ask turtle j [set linknumber linknumber + count [link-neighbors] of turtle i]
6 e" Q2 j! A+ H. m ]9 |+ }; k' ~" B6 R- z# G. K8 e
set i i + 11 N; {0 g$ I+ ]$ _! }
] 9 {7 a! t8 D8 l' v3 Z: ]6 X
set j j + 17 h& d7 l9 V( Z1 W+ x( r
]5 U% ?+ @% d" s/ ?9 h) Y2 @# h% z ?
set average-path-length nodedistance / (linknumber * 2): K+ M- i0 N; N
end |