擅长:python、mysql、java
<p>我设想了一种比您使用的更简单的方法:</p>
<pre><code>def ranWalkRects(t, x0, y0, x1, y1, w1, h1, x2, y2, w2, h2, dz):
t.pu()
t.goto(x0, y0)
t.pd()
num_steps = 0
in_rec1 = isInRect(t, x1, y1, w1, h1)
in_rec2 = isInRect(t, x2, y2, w2, h2)
while not in_rec1 or in_rec2:
angle = random.randrange(360)
t.lt(angle)
t.fd(dz)
num_steps += 1
in_rec1 = isInRect(t, x1, y1, w1, h1)
in_rec2 = isInRect(t, x2, y2, w2, h2)
print("Turtle takes", num_steps, "steps before entering the rectangle.")
</code></pre>
<p>但是我相信<code>isInRect()</code>也是可疑的,因为它做的第一件事就是移动海龟而不保存它当前的位置!一旦你把海龟移到别的地方,你怎么知道它是否在矩形里?这可能是一个数学决定,不需要实际移动海龟。你知道吗</p>