абаюдна абаюднавеч
Профи
(741)
2 дня назад
Параметры tracer(0) и update(): Вы используете tracer(0), что отключает автоматическое обновление экрана. Если вы хотите видеть результат, вам нужно будет вручную обновить экран с помощью update().
Положение черепахи: Убедитесь, что черепаха начинает рисовать с правильной позиции. Вы можете использовать penup() и goto() для перемещения черепахи в нужное место перед началом рисования.
Целочисленные координаты: Чтобы определить количество точек с целочисленными координатами внутри фигур, вам нужно будет использовать более точные границы.
Исправленный код:
from turtle import *
# Настройка
tracer(0) # Отключаем автоматическое обновление экрана
m = 20
# Начинаем рисовать первую фигуру
penup()
goto(-24*m, -30*m) # Перемещаем черепаху в начальную позицию
pendown()
# Рисуем первую фигуру
for i in range(6):
forward(24*m)
right(90)
forward(30*m)
right(90)
# Поднимаем хвост
penup()
forward(2*m)
right(90)
forward(10*m)
left(90)
pendown()
# Рисуем вторую фигуру
for i in range(6):
forward(75*m)
right(90)
forward(71*m)
right(90)
# Обновляем экран
update()
# Подсчет точек с целочисленными координатами
count = 0
for x in range(-45*m, 45*m + 1, m): # Увеличиваем шаг до m
for y in range(-30*m, 30*m + 1, m):
goto(x, y)
if x >= -24*m and x <= 0 and y >= -30*m and y <= 0: # Проверка первой фигуры
count += 1
elif x >= 0 and x <= 75*m and y >= 0 and y <= 71*m: # Проверка второй фигуры
count += 1
print("Количество точек с целочисленными координатами:", count)
done()
Перемещение в начальную позицию: Я добавил goto(-24*m, -30*m), чтобы черепаха начинала рисовать с правильной позиции.
Обновление экрана: Я добавил update() после рисования фигур, чтобы увидеть результат.
Подсчет точек: Я изменил диапазоны для подсчета точек, чтобы они соответствовали границам фигур. Убедитесь, что условия проверки точек соответствуют вашим фигурам.
Теперь, когда вы запустите этот код, вы должны увидеть правильное изображение и количество точек с целочисленными координатами, находящимися внутри фигур.
Черепахе был дан для исполнения следующий алгоритм:
Повтори 6 [Вперёд 24 Направо 90 Вперёд 30 Направо 90]
Поднять хвост
Вперёд 2 Направо 90 Вперёд 10 Налево 90
Опустить хвост
Повтори 6 [Вперёд 75 Направо 90 Вперёд 71 Направо 90]
Определите, сколько точек с целочисленными координатами будут находиться внутри объединения фигур, ограниченных заданными алгоритмом линиями, включая точки на границах этого объединения.
вот мой код:
а вот что получается: