Найти тему
Репетитор IT mentor

Задание 8 из ЕГЭ по информатике: решать аналитически или кодить?

Оглавление

Вчера разбирали проблемные задачи по просьбе моей ученицы. Девушка способная, внимательная и умная. Просто есть страх перед некоторыми задачами. И я её прекрасно понимаю. Потому что во время учебы в школе нам ничего не объясняли, у меня тоже был бы страх перед такими задачами. Этой короткой заметкой я хочу немного успокоить тех ребят, которые боятся даже начинать решать 8 задание по информатике.

По ОГЭ у меня на канале недавно были статейки, поэтому пора бы и честь знать — о ЕГЭ вспомнить 🧐

Сразу перейдем к практике...

Задача

Все 5-буквенные слова, составленные из букв А, О, У, записаны в алфавитном порядке. Вот начало списка:
1.  ААААА
2.  ААААО
3.  ААААУ
4.  АААОА
……
Запишите слово, которое стоит на 210-м месте от начала списка.

Решение:

Итак, у нас слова, буквы постоянно меняются, но как найти нужное слово? Не будем же мы на черновике расписывать до 210 строчки? Нам и 4 часов не хватит на такую рутину. Тогда аналитического способа нет и обязательно писать код? На самом деле можно решить аналитически и довольно просто.

Способ 1

Немного посмотрев на четыре строчки примера, мы можем заметить, что у нас действительно идут слова по возрастанию в алфавитном порядке. Ориентироваться на буквах довольно сложно. Давайте заменим их на цифры. Присвоим «А» = 0, «О» = 1, «У» = 2. Тогда мы получим таблицу из чисел:
1.  00000
2. 00001
3. 00002
4. 00010

Здесь нужно сделать одно замечание, после которого мы разделаемся с задачкой, как котейка с колбаской! Каждая строка состоит из 5 разрядов. Каждый разряд изменяется от 0 до 2. Числа 0, 1, 2 — остатки от деления на 3. Значит каждая строка — это текущее натуральное число, представленное в троичной системе исчисления. Единственная тонкость — наши числа начинаются с 0, а номера строк начинаются с 1. Значит на строке с номером n = 210 будет стоять последовательность из букв, которые будут соответствовать последовательности из чисел, которые будут являться троичной записью числа 209 (да да, на 1 меньше чем 210, потому что начинаем мы с 0, который получается из 00000, что соответствет ААААА). Теперь понимаете?

Остается перевести 209 в десятичной системе в некоторое (какое?) число в троичной системе исчисления. Это можно сделать делением в столбик на черновике:

Так можно переводить в любую систему исчисления из десятичной
Так можно переводить в любую систему исчисления из десятичной

Получается, что на 210 строке у нас будет стоять последовательность из цифр 21202, что будет соответствовать УОУАУ.

Визуализируем в табличку:

-3

Способ 2

Куда же нам без кодинга? Да, задачку можно решить на Python или любом другом ЯП. Просто на Python это делается быстрее, вы сами это знаете.

-4

Исходный код в текстовом виде (обязательно запускайте у себя)

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

Ответ: УОУАУ

А как бы Вы решали такую задачку?

Новые задачки по Excel из ЕГЭ по информатике?
Репетитор IT mentor14 октября 2021
Работаем с файлами и строками в Pascal : на примере 24 задачи из ЕГЭ по информатике
Репетитор IT mentor13 июня 2021

Понравилась статья? Поставьте лайк, подпишитесь на канал! Вам не сложно, а мне очень приятно :)

Если Вам нужен репетитор по физике, математике или информатике/программированию, Вы можете написать мне или в мою группу Репетитор IT mentor в VK
Библиотека с книгами для физиков, математиков и программистов
Репетитор IT mentor в telegram