Бесконечный цикл сравнения расстояний между точками - PullRequest
0 голосов
/ 06 июля 2018

Это только часть кода, я знаю, что он не работает. Другие функции, импорт и т. Д. Не имеют значения для этой проблемы.

Я хочу знать, во сколько раз dist меньше, чем r.

def points():
    gencolor = random.randint(100000,999999)
    hexcolor = ('#{}'.format(gencolor))
    s = 0
    while s <5:
        s += 1
        my_x = random.randint(0, WIDTH)
        my_y = random.randint(0, HEIGHT)
        canvas.create_oval(my_x, my_y, my_x + (WIDTH / 60), my_y + (WIDTH / 60), outline='black', width=(WIDTH / 300), fill=hexcolor)
        r = WIDTH / 2
        dist = ((((r - (my_x)) ** 2) + ((r - (my_y)) ** 2)) ** (1 / 2))
        circle = 0
         while dist < r:
             circle += 1

window.update()
canvas.pack()

1 Ответ

0 голосов
/ 06 июля 2018

Рассмотрим следующий код:

dist = 3
r = 10
circle = 0

while dist < r:
    circle += 1

Числа составлены, но это бесконечный цикл, потому что dist никогда не изменяется внутри тела цикла. Похоже, вы пытаетесь определить разницу между r и dist, что можно сделать с помощью circle = r - dist.

...