Найти тему
ПРОГМАТ | ШКОЛА

ОГЭ информатика | Задание 1

Оглавление
Создать карусельДобавьте описание
Создать карусельДобавьте описание

Как правило, первое задание из экзамена состоит в том, что необходимо найти слово, которое было вычеркнуто. Из вводных есть строка из которой удалили слово, вес одного символа и количество байт на которое строка сократилась.

Пример задания

В одной из кодировок Unicode каждый символ кодируется 16 битами. Вова написал текст (в нем нет лишних пробелов):
«еж, лев, слон, олень, тюлень, носорог, крокодил, аллигатор — дикие животные».
Ученик вычеркнул из списка название одного из животных. Заодно он вычеркнул ставшие лишними запятые и пробелы — два пробела не должны идти подряд.
При этом размер нового предложения в данной кодировке оказался на 16 байт меньше, чем размер исходного предложения. Напишите в ответе вычеркнутое название животного.

Анализ

У нас есть исходное предложение, где одно животное вычеркнуто, и результатом стало предложение, которое на 16 байт меньше. Нужно определить, какое животное было вычеркнуто.

Что нам известно:

  1. В Unicode каждый символ кодируется 16 битами.
  2. Вычеркнутое название животного привело к сокращению предложения на 16 байт.

Решение

Шаг 1 - единицы измерения

В задании вес одного символа указан в битах, а про предложение сказано, что оно сократилось на 16 байт. Биты и байты - разные единицы измерения. Чтобы правильно решить задачу, нужно вести расчёт в одних единицах измерения. В данном задании, как правило, считать можно в байтах.

1 байт = 8 бит.

значит, один символ весит 2 байта (16 бит / 8 = 2 байта)

Шаг 2 - длина удалённого слова

Известно, что вычеркнутое название животное уменьшило строку на 16 байт. Если один символ весит 2 байта, то поделив 16 на 2 получим, что было удалено 8 символов.

Но тут стоит быть внимательным. В задании сказано:

Ученик вычеркнул из списка название одного из животных. Заодно он вычеркнул ставшие лишними запятые и пробелы — два пробела не должны идти подряд.

Вместо со словом были вычеркнуты лишние пробелы и запятые. Пробел тоже весит 2 байта, как и запятая - потому что всё это символы. Посмотрим на исходную строку:

еж, лев, слон, олень, тюлень, носорог, крокодил, аллигатор — дикие животные

Если было удалено первое слово, то вместе с ним удалили запятую и пробел после этой запятой. Если слово было в середине, то тоже удалили запятую с пробелом после слова. Если слово последнее, то удалили запятую с пробелом перед этим словом.

Получается, что вместе со словом ВСЕГДА УДАЛЯЕТСЯ ЗАПЯТАЯ С ПРОБЕЛОМ.

Теперь, мы знаем сколько символов было удалено (8) и сколько среди них было символов, не являющихся словом (2). Количество букв в слове = 8 - 2 = 6 букв.

Шаг 3 - поиск слова

Ищем слово, состоящее из 6 букв. В этом задании подходящее слово будет только одно!

  • еж — 2символа
  • лев — 3 символа
  • слон — 4 символа
  • олень — 5 символов
  • тюлень — 6 символов
  • носорог — 7 символов
  • крокодил — 8 символов
  • аллигатор — 9 символов

Правильный ответ - тюлень

Дополнительный пример

В кодировке КОИ-8 каждый символ кодируется 8 битами. Андрей написал текст (в нем нет лишних пробелов):
При этом размер нового предложения в данной кодировке оказался на 11 байтов меньше, чем размер исходного предложения. Напишите в ответе вычеркнутое название страны.
Ученик вычеркнул из списка название одной из стран. Заодно он вычеркнул ставшие лишними запятые и пробелы — два пробела не должны идти подряд.
«Чад, Куба, Катар, Швеция, Эстония, Танзания, Сальвадор — страны».

Вес одного символа = 8 / 8 = 1 байт

Удалённые символы = 11 байт / 1 байт = 11 символов

Количество удалённых букв слова = 11 символов - 2 символа = 9 букв

Правильный ответ: Сальвадор

Наука
7 млн интересуются