我新调试好的程序如下,应该是对的,供参考) |9 H, j4 ~( W! D
因为特殊要求,这里的边的长度是二维座标内的空间距离
. u, k3 H* g: a8 G8 b
1 j, r7 t7 V% D- U' G' z4 Lto find-distance1 R& P+ |/ p. f" g! r2 s
let i 0
, d! G: U$ k$ d" y; ]7 C* | let j 0
' T2 n" I- j/ K let nodedistance 0
- `% b' e- B- W5 R: d7 t let linknumber 0 u' a$ j7 o/ Z. A/ h
3 _- ?( `- [, J# m
while [j < count turtles]
( Q- r0 a! y1 g0 a) u/ t1 V) H [: ~9 E& |+ A7 X/ Q6 I) P1 R
while [i < count turtles]9 q$ y5 V/ U( a, \# J: r: m! @
[ if link-neighbor? turtle i
$ W' y; |0 R. _ [ask turtle j [set nodedistance nodedistance + distance turtle i]
: k3 N& x3 ~( `% s ask turtle j [set linknumber linknumber + count [link-neighbors] of turtle i]
7 a9 y* c7 W5 G2 z2 t ]
. y6 o1 t! k; Q/ a6 @ M. x- S: r set i i + 1
]# C3 N9 Z& r! K ]
% A0 R, L! W2 m) C set j j + 1
. E- V3 v# Q* b W5 \" @) Y, C6 U5 j$ _ ]
( z# J* {% s7 j) J; j3 L+ q set average-path-length nodedistance / (linknumber * 2)
1 l: u2 c/ M, D) M: \8 f. E- cend |