Разборы · ОГЭ, задание 1
Задание 1 ОГЭ по информатике: информационный объём текста
В задании 1 дан текст в некоторой кодировке и сказано, насколько уменьшился его размер после того, как из него вычеркнули слово. Нужно найти это слово. Задание оценивается в 1 балл.
Что нужно знать
- 1 байт = 8 бит. В кодировке, где символ занимает 16 бит, он занимает 2 байта; 8 бит — 1 байт; 32 бита — 4 байта.
- Считаются все символы: буквы, пробелы, запятые, кавычки, точки.
- Вместе со словом обычно удаляют запятую и пробел — это ещё 2 символа.
Как решать
- Переведите разницу размеров в символы: разделите её на размер одного символа.
- Вычтите 2 символа (запятую и пробел) — получится длина слова.
- Найдите в списке слово такой длины.
Пример из демоверсии 2027
Кодировка — 16 бит на символ. Текст: «Школьные предметы: ОБЖ, химия, физика, алгебра, биология, география, литература, информатика». После удаления одного предмета размер уменьшился на 16 байт.
16 байт — это 8 символов по 2 байта. Минус запятая и пробел — 6 букв. Шесть букв только у слова физика.
Типичные ошибки
- Путают биты и байты: если разница дана в битах, делить нужно на число бит в символе.
- Забывают про запятую и пробел и ищут слово на 2 буквы длиннее.
Вид задания: размер предложения
Считайте символы по одному: буквы, пробелы, запятые, тире, знак в конце — всё это символы. Количество умножьте на вес символа из условия и переведите в те единицы, о которых спрашивают.
В одной из кодировок Unicode каждый символ кодируется 16 битами.
Определите размер в байтах следующего предложения в данной кодировке:
Кончил дело — гуляй смело!
Решение.
Считаем все символы предложения по одному: буквы, пробелы и знаки препинания. Тире и знак в конце предложения — тоже символы.
K = 26 символов, один символ занимает 2 байта.
I = 26 · 2 = 52 (в байтах).
Вид задания: слово написали дважды
Арифметика та же, что и с вычеркнутым словом, только объём растёт: вместе со словом появляются запятая и пробел. Длина слова — число добавленных символов минус 2.
В одной из кодировок Unicode каждый символ кодируется 16 битами.
Ученик хотел написать текст (в нём нет лишних пробелов): «Города: Казань, Уфа, Сочи, Пермь, Самара, Воронеж, Екатеринбург».
Одно из слов списка он по ошибке написал два раза подряд, поставив между одинаковыми словами запятую и пробел.
При этом размер написанного предложения в данной кодировке оказался на 10 байт больше, чем размер нужного предложения. Напишите в ответе лишнее слово.
Решение.
Один символ занимает 2 байта. Лишние 10 байт — это 5 символов.
Вместе со словом добавились запятая и пробел, поэтому длина слова — 5 − 2 = 3. Слово такой длины в списке одно: Уфа.
Добавили слово или вычеркнули — арифметика одна и та же, меняется только знак.
Вид задания: объём рассказа в Кбайтах
Порядок действий: символы → байты → Кбайты. Символов — страницы × строки × символы в строке. В одном Кбайте 1024 байта, а не 1000. Через биты считать дольше.
Доклад, набранный на компьютере, содержит 12 страниц, на каждой странице 40 строк, в каждой строке 48 символов. Каждый символ кодируется 16 битами.
Определите информационный объём доклада в Кбайтах.
Решение.
Символов: K = 12 · 40 · 48 = 23040.
Один символ — 16 бит = 2 байта, значит, объём 23040 · 2 = 46080 байт.
В Кбайтах: 46080 : 1024 = 45. Порядок действий: символы → байты → Кбайты, делим на 1024, а не на 1000.
Вид задания: задан алфавит
Вес символа здесь не дан прямо: сначала находим его из мощности алфавита по формуле N = 2i, и только потом считаем объём.
Текст записан буквами 128-символьного алфавита и содержит 400 символов. Каждый символ кодируется одинаковым минимально возможным числом бит. Определите информационный объём этого текста в байтах.
Решение.
Вес символа находим из мощности алфавита: N = 2i, 128 = 27, значит, i = 7 бит.
I = K · i = 400 · 7 = 2800 бит.
В байтах: 2800 : 8 = 350.
Потренироваться: задание 1 новые варианты с проверкой ответа