Главная Проекты Номер 6. ЕГЭ по информатике

Номер 6. ЕГЭ по информатике

О задании

Задание 6 ЕГЭ по информатике нацелено на определение результатов работы простейших алгоритмов управления исполнителями. Само по себе задание, с точки зрения программирование достаточно простое. От вас, как от программистов, здесь требуется просто переписать представленный в условии алгоритм и построить по нему фигуры.

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

До 2024 года подходов к решению задания 6 было три:

  1. Использование исполнителя Черепаха в среде Кумир
  2. Использование графического модуля turtle на языке программирования Python
  3. Использование аналитического метода решения

В настоящее время среда Кумир уже не является обязательной к наличию на компьютерах при проведении ЕГЭ по информатике. А аналитический метод порой требует более значительных знаний по геометрии, а также при использовании такого подхода легче ошибиться в расчётах.

Мы же остановимся на визуализации работы алгоритмов, предложенных в задании 6, с помощью модуля turtle в Python. Это более наглядный метод, а сам по себе программный код для решения этого задания является типовым. Даже если вы забудете какую-то его часть, то всегда сможете самостоятельно дойти реализации тех же подходов, просто используя документацию к данному модулю (она доступна по умолчанию при использовании языка Python).

Формулировки

Условие задания 6 ЕГЭ по информатике обычно начинается с описания команд исполнителя и базовой информации о записи циклов с примером алгоритма.

Далее идет непосредственно тот алгоритм, который вам необходимо реализовать. Напомним, что фраза «Повтори k» означает, что вам необходимо запустить цикл for с k итерациями. После команды «Вперёд» идет расстояние в пикселях, в после команд поворотов «Направо» и «Налево» идёт угол поворота в градусах. Фразы «Поднять хвост» и «Опустить хвост», соответственно, означают начало отрисовки линии (поднять перо) и конец отрисовки (опустить перо).

И после определения алгоритма как раз и идут те формулировки, которые определяют, что именно вам необходимо дать в ответ. Рассмотрим их подробнее.

Пересечение и объединение фигур

Итак, давайте вспомним, что обозначает пересечение двух фигур. Предположим, у нас есть расчерченное поле, сторона клетки у нас составляет одну условную единицу.

На поле есть две фигуры:

  1. Оранжевый прямоугольник с номером 1
  2. Зелёный прямоугольник с номером 2
-2

Теперь давайте сдвинем каждую фигуру на одну клетку в центр. Получим теперь, условно, три фигуры: часть первой, часть второй и третья фигура, которая является «наложением» первых двух.

-3

Этот третий прямоугольник и будет являться пересечением фигур 1 и 2. Таким образом, пересечение двух прямоугольников — это часть плоскости, которая принадлежит одновременно обоим прямоугольникам.

-4

Здесь не зря сделан акцент на слово «одновременно». Ключевую роль это сыграет при определении объединения фигур.

Объединением двух фигур называется фигура, состоящая из всех точек двух фигур. То есть все фигуры вместе — 1, 2 и 3 — дают нам объединение фигур 1 и 2.

-5

А теперь давайте рассмотрим ту же самую картину, но не с позиции фигур на ней, а с позиции точек, принадлежащих этим фигурам.

-6

С пересечением все просто: мы видим некую область, которая принадлежит обеим фигурам (жёлтая). Подсчитать, сколько точек принадлежит пересечению несложно, здесь получим 9 точек.

Куда интереснее ситуация обстоит с объединением фигур.

До момента пересечения, у каждой из фигур было по 20 точек (5 на длине и 4 на ширине прямоугольника). Но после пересечения у каждой из фигур осталось по 11 точек. А вместо 18 точек, которые принадлежали раньше обоим фигурам (по 9 у каждой) теперь осталось только 9, которые принадлежат пересечению фигур.

Этот момент крайне важно осознать. В реальных заданиях 6 могут быть достаточно большие фигуры, а подсчёт точек вручную — процесс довольно муторный. Проще будет перемножить количество точек на сторонах (длине и ширине) каждого прямоугольника, получив тем самым общее количество точек, принадлежащих этой фигуре.

Для подсчёта количества точек объединения фигур мы не можем просто сложить количество точек каждой их этих фигур. Ведь мы помним, что у нас есть еще общие точки на пересечении. Следовательно, необходимо из суммы количества точек этих фигур вычесть количество точек их пересечения.

Давайте подсчитаем здесь количество точек объединения:

5 · 4 + 5 · 4 – 3 · 3 = 20 + 20 – 9 = 31.

Теперь вернёмся к различным формулировкам задания 6.

Точки внутри пересечения

Одна из формулировок задания 6 звучит следующим образом:

«Определите, сколько точек с целочисленными координатами будут находиться внутри области пересечения фигур, ограниченных заданными алгоритмом линиями, включая точки на границах этого пересечения.»

Здесь сложностей возникнуть не должно, нам необходимо найти пересечение фигур и подсчитать количество точек, принадлежащих пересечению.

Можно это сделать как вручную, так и с помощью формул из геометрии для соответствующих фигур.

Сложнее тут обстоят дела с формулировкой, когда необходимо найти количество точек внутри пересечении, не включая точки на линии.

-7

Например, на данном изображении всего одна точка внутри пересечения фигур, которая не лежит на линии (отмечена синим).

Рассмотрим другую фигуру: здесь у нас зелёный прямоугольник, у которого 7 точек на одной стороне и 5 на другой. Необходимо найти все точки, которые не лежат на линии. Можем сразу посчитать количество «внутренних» точек — умножим 5 на 3.

-8

Точки внутри объединения

Ряд заданий 6 предполагает нахождение точек внутри объединения.

Например, можно встретить такую формулировку:

«Определите, сколько точек с целочисленными координатами будут находиться внутри объединения фигур, ограниченных заданными алгоритмом линиями, включая точки на границах этого объединения.»

Решение подобной задачи мы уже рассматривали выше. Нам необходимо найти количество точек, принадлежащих каждой фигуре и их пересечению, перемножить количество точек, принадлежащих фигурам, и отнять от этого произведения количество точек пересечения.

Формулировки данного типа, где необходимо находить точки внутри объединения, обычно не предусматривают исключение точек на линиях из ответа. То есть в данном типа заданий вы не встретите формулировку из разряда «не включая точки на границах этого объединения».

Площадь и периметр фигуры

Ранее мы рассматривали типы задания 6, где работа велась только с точками фигур. Но есть формулировки этого задания, где необходимо найти площадь или периметр фигур, находящихся на пересечении или объединении исходных фигур.

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

«Определите площадь области пересечения фигур, ограниченных заданными алгоритмом линиями.»

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

-9

Разберем тот же самый прямоугольник, у которого 7 точек на одной стороне и 5 на другой. Только теперь нам важны уже не точки, а отрезки между ними.

Следовательно, отрезков у нас 6 и 4. Значит и длины сторон у нас тоже 6 и 4 единиц. Тогда площадь найдем перемножив длину одной стороны на длину другой: 6 · 4 = 24. Периметр находим сложив длины всех стороны: 6 + 4 + 6 + 4 = 20.

Задача с сайта Полякова К. Ю.

скрин

открываем кумир

скрин

если будет открыто похожее окно или с элементами, которые нам не нужны, все равно делайте пошагово, как будет написано

скрин

закрываем окно робота

закрываем справку

будет так

скрин

далее

окна — черепаха

скрин

будет так

скрин

настроим Черепаху правильно

Авто убрать галочку! 

кликнуть на 1:1

скрин

далее пишем основу алгоритма

скрин

теперь читаем условие


небольшие условности: ось ординат — это вертикальная ось!

ось абсцисс — горизонтальная ось!!


и просто переписываем код

Направо 30 
Повтори 3 [Направо 150 Вперёд 6 Направо 30 Вперёд 12]

в Кумире направо 30 записывается как: вправо (30)

также с налево — влево ()

вперед и назад — вперед () назад ()

повтори 3 — это:

нц 3 раз

кц


скрин

запускаем программу

скрин

получается эта фигура

скрин

теперь ответим на вопрос:

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

считаем вручную

для удобства делаем скрин части экрана

открываем paint

скрин

не забудьте правильно настроить paint — подробнее про это можно посмотреть в разборе 2 задания

просто отмечаем точки, чтобы их не забыть

скрин

30 штук внутри области

в самом Кумире не бойтесь увеличивать и уменьшать картинку

мы в начале настройки сняли галочку с авто — значит размер клеток будет фиксированным