Я пытаюсь создать функцию для домашнего задания, которая рисует зубчатую горную кривую с помощью черепах и рекурсии. Функция называется jaggedMountain(x,y,c,t), где x x,y — конечные координаты, c — константа сложности, а t — объект черепахи. Я пытаюсь создать такое изображение:
Код: Выделить всё
def jaggedCurve(x,y,c,t):
t.pendown()
x1 = t.xcor() + x / 2
y1 = t.ycor() + y / 2
y1 = y + (random.uniform(0,c)-0.5) * (t.xcor() - x)
if (x1,y1) == (x,y):
return None
else:
jaggedCurve(x1,y1,c,t)
Это быстро дает сбой, поскольку базовый вариант никогда не выполняется, функция вызывается 993 раза и глубина рекурсии превышена. Я уже довольно долго ломаю голову над этим, есть ли какие-нибудь предложения?
Подробнее здесь:
https://stackoverflow.com/questions/557 ... -recursion