Контрольные задания > №1. В одной из кодировок Unicode каждый символ кодируется 16 битами. Вова написал текст (в нём нет лишних пробелов): «Заяц, белка, рысь, олень, лама, носорог, крокодил, аллигатор - дикие животные». Затем он вычеркнул из списка название одного из животных. Заодно он вычеркнул ставшие лишними запятые и пробелы – два пробела не должны идти подряд. При этом размер нового предложения в данной кодировке оказался на 20 байт меньше, чем размер исходного предложения. Напишите в ответе вычеркнутое название животного.
Вопрос:
№1. В одной из кодировок Unicode каждый символ кодируется 16 битами. Вова написал текст (в нём нет лишних пробелов): «Заяц, белка, рысь, олень, лама, носорог, крокодил, аллигатор - дикие животные». Затем он вычеркнул из списка название одного из животных. Заодно он вычеркнул ставшие лишними запятые и пробелы – два пробела не должны идти подряд. При этом размер нового предложения в данной кодировке оказался на 20 байт меньше, чем размер исходного предложения. Напишите в ответе вычеркнутое название животного.
Ответ:
Задача №1:
* Изначальный текст содержит названия животных: Заяц, белка, рысь, олень, лама, носорог, крокодил, аллигатор.
* Нужно найти животное, удаление которого приведет к уменьшению размера текста на 20 байт.
* Каждый символ в Unicode занимает 16 бит, что составляет 2 байта (16 бит / 8 бит/байт = 2 байта).
* Уменьшение на 20 байт означает удаление 20 байт / 2 байта/символ = 10 символов.
* Считаем количество символов в каждом названии животного:
* Заяц - 4 символа
* Белка - 5 символов
* Рысь - 4 символа
* Олень - 5 символов
* Лама - 4 символа
* Носорог - 7 символов
* Крокодил - 8 символов
* Аллигатор - 9 символов
* Удаление названия животного также включает удаление пробелов и запятых. В исходной фразе животные разделены запятой и пробелом (, ), это 2 символа. После удаления остается только один пробел.
* Проверим каждое название: Заяц (4) + ", " (2) = 6 символов, не подходит.Белка (5) + ", " (2) = 7 символов, не подходит.Рысь (4) + ", " (2) = 6 символов, не подходит.Олень (5) + ", " (2) = 7 символов, не подходит.Лама (4) + ", " (2) = 6 символов, не подходит.Носорог (7) + ", " (2) = 9 символов, не подходит.Крокодил (8) + ", " (2) = 10 символов!
* Если мы удалим слово "крокодил", то мы удалим 8 символов самого слова + ", " (2 символа) - 1 символ (пробел) = 9 символов.
* Аллигатор (9) + ", " (2) = 11 символов, не подходит.
* Искомое животное, при удалении которого сокращается размер текста на 10 символов, это **крокодил**.