我编的程序如下turtles-own [energy]! k% j5 b( x$ W+ p0 V0 j Q
to setup
4 P' z5 p) u' R9 B3 A2 {7 k clear-all
. C$ R U. n# i6 H4 }# x setup-patches8 L$ d+ W6 D" _5 a
create-turtles 1007 F' u% o d$ ?$ N
do-plots
9 ]6 X& t# y( d) z; s ask turtles [ setxy random-xcor random-ycor ]% B4 A0 F6 F2 q
end3 A0 k3 J9 F) v0 B4 T0 m* R4 Y
to go
O9 N+ C5 C4 F1 T move-turtles' ?& p Z# F! V. x
eat-grass
: U: x1 l, d8 ?$ K( | H. f reproduce) p2 Y1 u" n% z& S7 t( C
check-death4 M) i J7 @* A" E& l; K3 r7 D
regrow-grass
( ^1 B- @* d9 P; E1 D7 l do-plots5 o, s3 }2 p% Z+ b0 p4 d' g# O
end
3 M9 }! c: S4 |$ C! wto move-turtles
6 u M3 `5 a7 |% u" \. D, @ ask turtles [# ?) L1 g9 F" c, _( y
right random 360
+ G5 V' K' U4 u5 z forward 1
( Y) d) N( g" l7 p9 S: T$ y set energy energy - 1 {& b; w3 {/ s
]7 W1 |+ z' @9 x9 m) `7 F$ F
end
. o8 d. e" K, |) a9 T/ jto setup-patches0 h+ X% c X$ _/ [- L
ask patches [ set pcolor green ]
4 ]* [ L: |3 O- M5 [end
. t' X6 B& c: Fto setup-turtles
) b+ M& K6 t1 b create-turtles 100
; u6 C/ R6 j2 ?0 Z, t. T P0 Q5 d ask turtles [ setxy random-xcor random-ycor ]
* o. [6 T. k% ^end
6 o/ z3 \# X3 X" dto eat-grass; z+ ]- B ]" p5 d" q5 }
ask turtles [0 G- D% J1 T2 {( M
if pcolor = green [
v+ Z9 Q% g4 L% N9 x1 {, f/ O# [ set pcolor black
- V% l( f9 T* b: H1 k9 k! h set energy (energy + 10)2 b( M6 l' a- y5 y; n
]' ~6 k& P Z# J
ifelse show-energy?: S$ q" ]& [; _7 R
[ set label energy ]% n8 O1 v: E; z6 A* O5 R
[ set label "" ]5 e$ n( J% k4 u8 y% Z, e
]
8 V l; r5 _$ z2 `! W1 c% M fend) s3 b/ S+ j" s/ U5 P% C7 n
to reproduce
* M- J% S! d! P0 A/ m ask turtles [# F+ I9 Y' u' r) O* K$ u
if energy > 50 [7 o+ U3 N9 u) }! R6 V! I) N8 f# Y
set energy energy - 50
. `1 q; e. P5 S) |0 f- a- K& `& g hatch 1 [ set energy 50 ]
0 u& n& [; ~& I, i Y( j8 J ]$ o9 w) r- P2 T! q0 g. j7 p0 C$ [
]# x& L) y. G! t
end4 T/ q+ v$ x. R( L |- D
to check-death
4 M+ @0 X9 J2 F0 H4 } ask turtles [' n' C7 T+ e' E* X0 ^4 m
if energy <= 0 [ die ]& ~7 h0 z. I* ~7 l, p5 D9 }
]$ f+ C6 V# [4 t2 x( v4 Q
end% E; `5 M- ?& r& `
to regrow-grass+ @+ N9 `/ D' w$ N5 x/ @7 `( k* Z
ask patches [7 }6 i0 R! d( v7 `+ n6 L
if random 100 < 3 [ set pcolor green ]
6 X9 P; @. c( X# k6 D ]! |/ m6 N- B+ @* H, L
end: ]. e( ?5 `7 |8 }& G
to do-plots
7 R/ V3 }5 B5 a, w9 }2 m8 p set-current-plot "Totals"
# V) T: b6 j- D1 ] d set-current-plot-pen "turtles": [- R& Z! d4 A* P0 ~& h" p/ {# y" P
plot count turtles5 w0 y2 x6 C" ^: q; S- F$ s
set-current-plot-pen "grass"0 H- l9 P- ^3 D" F
plot count patches with [pcolor = green]
* k) _6 U, N/ @' _4 P( ]end' I! t0 b: C% ]% K( |
可是运行时提示no such plot: "Totals"
. h3 D& M9 S# |! Q& F+ R7 a, R- M4 }. }error while observer running SET-CURRENT-PLOT0 m' t9 Q/ ?9 Y) ~9 m
called by procedure DO-PLOTS% d( m0 l! d" u; Q5 T
called by procedure SETUP
m; N3 x$ _/ _* V6 S8 i called by 按钮 'setup'
$ [3 K) Z# O( @2 u6 b5 T求大神解答啊 |