我新调试好的程序如下,应该是对的,供参考
( l5 L. ]3 y0 _8 A因为特殊要求,这里的边的长度是二维座标内的空间距离- d# X* [/ c0 I( O {! N5 V2 m
- A6 a$ z* |' y
to find-distance6 U+ @& Y* N I
let i 0' m( Z% G* x" _2 _. n) T$ X
let j 07 g" a2 V$ B u2 }, u8 }4 U
let nodedistance 01 `1 B6 D1 z3 [8 f3 g5 Q
let linknumber 0
6 x* f+ I/ n9 z8 t4 F
' {$ g; u% J/ C( w4 ? while [j < count turtles]' x) [6 I$ l- e4 v
[. ?' r+ l& g& R, t. p: ~8 V9 p, C
while [i < count turtles]
! I1 r1 R) W2 y4 R" g [ if link-neighbor? turtle i
# A3 a8 O4 s4 w' o; r; [' k6 |( k5 y$ x [ask turtle j [set nodedistance nodedistance + distance turtle i], ~6 W% F9 b" O% Z1 L. S' y
ask turtle j [set linknumber linknumber + count [link-neighbors] of turtle i]6 I, R6 @$ p( o% D6 @% q0 ]
]6 w* Z) \" p2 J8 M5 Y5 X* X ?
set i i + 13 ^% S/ t) I' p$ M, p( l% F/ I5 c' ]
] 5 I n/ A+ S" B( {1 `7 v
set j j + 1
7 i) B1 o3 L+ w ]
) z+ J! s: B7 l. t: T- A4 Z set average-path-length nodedistance / (linknumber * 2)
, [5 [2 L$ @7 D3 }% ]end |