Untitled

Условие: Тип 6 № 47246

Исполнитель Черепаха действует на плоскости с декартовой системой координат. В начальный момент Черепаха находится в начале координат, её голова направлена вдоль положительного направления оси ординат, хвост опущен.

Черепахе был дан для исполнения следующий алгоритм:

Повтори 4 [Вперёд 14 Направо 120]

Определите, сколько точек с целочисленными координатами будут находиться внутри области, ограниченной линией, заданной данным алгоритмом. Точки на линии учитывать не следует.

Первый вариант решения задачи (первая часть - рисуем фигуру)

Первый вариант решения задачи (первая часть - рисуем фигуру)

Описание к первой части решения задачи через библиотеку turtle

  1. импортируем все методы (*) библиотеки turtle
  2. обязательно разворачиваем голову Черепахи вдоль оси ординат (как сказано в условии)
  3. увеличим скорость отрисовки пера, чтобы не ждать
  4. добавляем переменную L, отвечающую за масштаб фигуры на холсте
  5. удовлетворяя условию, повторяем 4 раза действия:
  6. вперед 14 шагов (пикселей на масштаб L)
  7. разворачиваем направление головы вправо на 120 градусов (не зависит от масштаба)
  8. команда done() необходима для фиксации отрисованной фигуры на холсте (чтоб она не закрывалась).

Рисунок, который должен получиться

Рисунок, который должен получиться

# Код решения Вариант 1
from turtle import *

left(90)
speed(10)
l = 20
for _ in range(4):
    forward(14*l)
    right(120)
done()

Первый вариант решения задачи (полное решение)

Первый вариант решения задачи (полное решение)

Рисунок, который должен получиться

Рисунок, который должен получиться

Продолжим описание первого варианта решения задачи через библиотеку turtle, вторая часть:

  1. меняем цвет пера на красный (или любой другой)
  2. команда up() поднимает перо, чтобы не было лишних элементов на холсте
  3. так как наша фигура лежит в первой четверти (можно увидеть по картинке и началу отрисовки), то перебираем x в диапазоне от 0 до большего шагу числа, чтобы покрыть всю фигуру
  4. аналогичный перебор делаем для переменной y
  5. команда goto() переносит наше перо в координату, не забываем про масштаб L
  6. ставим точку на (цвет можно было поменять здесь, как указано на картинке)
# Код решения Вариант 2

from turtle import *

left(90)
speed(10)
l = 20
for _ in range(4):
    forward(14*l)
    right(120)

color('red')
up()
for x in range(0, 15):
    for y in range(0, 15):
        goto(x * l, y * l)
        dot('blue')
done()