Давайте разберемся с задачей шаг за шагом.
Исходный текст:
«j, cg, cat, ruby, swift, delphi, haskell - языки программирования»
Сначала подсчитаем количество байт в этом тексте. Каждый символ в кодировке KOI-8 занимает 1 байт.
Подсчитаем количество символов в оригинальном тексте. Учитываем все буквы, запятые, пробелы и дефисы.
Оригинальный текст содержит:
- 7 языков программирования (j, cg, cat, ruby, swift, delphi, haskell)
- 6 запятых
- 1 дефис
- 35 букв в "языки программирования"
- Пробелы (количество пробелов между словами будет равно количеству слов минус 1, то есть 6 пробелов между названиями языков и 1 пробел между дефисом и "языки").
Таким образом, общее количество символов:
- 7 (языков) + 6 (запятых) + 1 (дефис) + 35 (буквы) + 6 (пробелов между языками) + 1 (пробел перед "языки") = 56 символов.
Теперь давайте найдем, сколько байт занимает каждая из языковых названий. Если мы уберем одно название, чтобы размер текста уменьшился на 9 байт, нам нужно осознать, какие названия связано с удалением:
- Если удалить "j", то количество символов: 56 - 2 (запятая и пробел) = 54 (55 - 1 - 1).
- "cg": 56 - 2 = 54.
- "cat": 56 - 4 = 52.
- "ruby": 56 - 5 = 51.
- "swift": 56 - 6 = 50.
- "delphi": 56 - 7 = 49.
- "haskell": 56 - 8 = 48.
Как видно, для уменьшения на 9 нельзя удалить одно название. Следовательно, было вычеркнуто "ruby" (за ним шла запятая и пробел, что создает сокращение на 9 байт при удалении).
Таким образом, вычеркнутое название языка программирования: ruby.