31 марта 2025 г.

Программирование. Задание № 6 "Анализ программ с циклами" (ЕГЭ-2023)

Исполнитель Черепаха действует на плоскости с декартовой системой координат. В начальный момент Черепаха находится в начале координат, её голова направлена вдоль положительного направления оси ординат, хвост опущен. При опущенном хвосте Черепаха оставляет на поле след в виде линии. В каждый конкретный момент известно положение исполнителя и направление его движения. У исполнителя существует 6 команд: Поднять хвост, означающая переход к перемещению без рисования; Опустить хвост, означающая переход в режим рисования; Вперёд n (где n – целое число), вызывающая передвижение Черепахи на n единиц в том направлении, куда указывает её голова; Назад n (где n – целое число), вызывающая передвижение в противоположном голове направлении; Направо m (где m – целое число), вызывающая изменение направления движения на m градусов по часовой стрелке, Налево m (где m – целое число), вызывающая изменение направления движения на m градусов против часовой стрелки.

Запись
Повтори k [Команда1 Команда2 … КомандаS]
означает, что последовательность из S команд повторится k раз. Черепахе был дан для исполнения следующий алгоритм:
Направо 90
Повтори 3 [Направо 45 Вперёд 10 Направо 45]
Направо 315 Вперёд 10
Повтори 2 [Направо 90 Вперёд 10]
Определите, сколько точек с целочисленными координатами будут находиться внутри области, которая ограничена линией, заданной алгоритмом. Точки на линии учитывать не следует.

Решение: Напишем программу на языке Phyton
#стартовые данные
import turtle as t #подключение "Черепашьей графики"
k = 20 #масштаб
t.left (90) #разворот "на север"
#1
t.right (90)
#2
for i in range (3):
  t.right (45)
  t.forward (k*10)
  t.right (45)
#3
t.right (315)
t.forward (k*10)
#4
for i in range (2):
  t.right (90)
  t.forward (k*10)
#построение сетки
for x in range (-15,8):
for y in range (-15,8):
     t.goto( x*k, y*k )  # в точку с заданными координатами
     t.dot( 2.5, 'red')  # ставим точку
done ()

Ответ: 203

Комментариев нет:

Отправить комментарий