我新调试好的程序如下,应该是对的,供参考
" {4 h; U' t8 {8 s: z' e因为特殊要求,这里的边的长度是二维座标内的空间距离* t$ k3 j9 u8 k3 d3 V/ M) ]" {
' @( `8 r, B" K0 v* ^to find-distance
. j' W: \/ _( d% Q let i 0
% f5 }8 ?" ]: x/ q- Q% c2 Q let j 0, B/ U+ T* D( h6 E% z, @4 v
let nodedistance 0
1 N8 r# W' ^: o7 D let linknumber 05 l: K( i3 @, ]7 L/ e, ~: |* ?0 L
" T# U6 W# R: H- Q3 u. _0 g% p6 x
while [j < count turtles]# ?; q( h( M) |8 U) N C3 I% g
[# x9 K# T7 N K! e7 ?! Q; T* `9 r( L
while [i < count turtles]% _1 m. H. ~0 q P) ]: f& @
[ if link-neighbor? turtle i
4 ?% U8 D5 k3 ^7 H! ^/ v. X [ask turtle j [set nodedistance nodedistance + distance turtle i]
5 B- j) S& Q7 ?7 y1 a. L ask turtle j [set linknumber linknumber + count [link-neighbors] of turtle i]
6 ~ g. k5 O6 q4 u ]
6 X+ v7 Z" D6 T6 K- b7 _* h( B set i i + 18 i" G: m% r7 x% n2 Y$ Q: p1 B
]
! [# m# Z$ W9 v4 z set j j + 1$ F; X, Z, ^7 r
]
6 B1 h, D8 Y4 l set average-path-length nodedistance / (linknumber * 2)
6 N9 R- E/ H } S2 b. S1 x3 [end |