Тема 4. Кодирование и декодирование – условие Фано
4.01 Кодирование буквенной последовательности
Вспоминай формулы по каждой теме
Решай новые задачи каждый день
Вдумчиво разбирай решения
ШКОЛКОВО.
Готовиться с нами - ЛЕГКО!
Подтемы раздела кодирование и декодирование – условие фано
Решаем задачи

Ошибка.
Попробуйте повторить позже

Задача 1#72481

По каналу связи передаются сообщения, содержащие только восемь букв: A, B, C, D, E, F, G, H. Для передачи используется двоичный код, удовлетворяющий условию Фано. Кодовые слова для некоторых букв известны: A – 00, B – 10, C – 110, D – 111. Какое наименьшее количество двоичных знаков потребуется для кодирования четырёх оставшихся букв? В ответе запишите суммарную длину кодовых слов для букв: E, F, G, H.

Показать ответ и решение

Составим схему, равномерно расширим незанятые ветки до тех пор, пока не хватит кодовых слов на все буквы. Получится сумма 4+4+4+4=16.

PIC

Ответ: 16

Ошибка.
Попробуйте повторить позже

Задача 2#62477

Сёма кодирует слова. Для кодирования букв Д, Н, Й, А, Л, Е он решил использовать двоичное представление чисел 0, 1, 2, 3, 4, 5 соответственно (с сохранением одного незначащего нуля в случае одноразрядного представления). Сёма закодировал слово ДЕДЛАЙН и записал результат шестнадцатеричным кодом. Запишите, что получилось у Сёмы.

Показать ответ и решение

В двоичном представлении буквы равны: Д - 00, Н - 01, Й - 10, А, 11, Л - 100, Е - 101. Тогда, слово ДЕДЛАЙН кодируется как 0010100100111001. Теперь разобьем это представление на четверки: 0010− 1001− 0011− 10012 = 293916  .

Ответ: 2939

Ошибка.
Попробуйте повторить позже

Задача 3#59327

Для кодирования букв Н, А, В, О, Р решили использовать двоичное представление чисел 0, 1, 2, 3, 4 соответственно (с сохранением одного незначащего нуля в случае одноразрядного представления). Закодируйте последовательность букв ВОРНАВАР таким способом и результат запишите шестнадцатеричным кодом.

Показать ответ и решение

Закодируем четверичным кодом каждую букву:

Н — 00

А — 01

В — 10

О — 11

Р — 100

Закодируем последовательность букв ВОРНАВАР, используя кодировку букв:

В  О  Р  Н  А  В  А  Р

10 11 100 00 01 10 01 100

Получаем 1011100000110011002  ; Переведем данное число в десятичную сс, а затем в 16-ную сс:

1011100000110011002 = 18862010 = 2E0CC16  .

Ответ: 2E0CC

Ошибка.
Попробуйте повторить позже

Задача 4#59325

По каналу связи передаются сообщения, содержащие все буквы русского алфавита. Для передачи используется двоичный код, удовлетворяющий условию Фано. Кодовые слова для некоторых букв известны: А — 010, Б — 00, Г — 101. Какое наименьшее количество двоичных знаков потребуется для кодирования слова РОБОТ?

Примечание. Условие Фано означает, что ни одно кодовое слово не является началом другого кодового слова.

Показать ответ и решение

Построим дерево фано:

PIC

Остается 3 свободных листа, в лист, у которого код имеет длину 2 запишем букву О, так как она в искомом слове встречается дважды. Букву Р запишем в любой оставшийся лист с длиной кода 3. Так как остается только 1 лист, а нам необходимо иметь возможность закодировать все буквы русского алфавита, то из этого оставшегося листа нужно вывести две ветки – в один из получившихся листов запишем букву Т, а другой остается для возможности закодировать остальные буквы.

Тогда итоговая длина двоичного кода будет: 3+2+2+2+4 = 13.

Ответ: 13

Ошибка.
Попробуйте повторить позже

Задача 5#57442

По каналу связи передаются сообщения, содержащие только буквы из набора: А, Б, И, С, Т, У. Для передачи используется двоичный код, удовлетворяющий условию Фано.Кодовые слова для некоторых букв известны: А – 111, Б – 001. Для четырёх оставшихся букв И, С, Т и У кодовые слова неизвестны. Какое количество двоичных знаков потребуется для кодирования слова БАТУТИСТ, если известно, что оно закодировано минимально возможным количеством двоичных знаков?

Примечание: условие Фано означает, что ни одно кодовое слово не является началом другого кодового слова.

Показать ответ и решение

Построим дерево фано:

PIC

Свободными остаются листья с кодами 000, 01, 10 и 110. Буква Т встречается в слове 3 раза, поэтому ей присвоим код длины 2. Тогда букве И и У присвоим коды с длиной 3, а букве С код длины 2. Тогда итоговая длина двоичного кода будет: 3+ 3 +2 + 3+ 2+ 3 + 2+ 2 = 20

Ответ: 20

Ошибка.
Попробуйте повторить позже

Задача 6#57441

Все заглавные буквы русского алфавита закодированы неравномерным двоичным кодом, в котором никакое кодовое слово не является началом другого кодового слова. Это условие обеспечивает возможность однозначной расшифровки закодированных сообщений. Известны кодовые слова некоторых букв: Е – 011, Н – 010, В – 1011, О – 11. Известно также, что код слова ТОПОТ содержит 11 двоичных знаков. Сколько двоичных знаков содержит код слова ВЕТО?

Показать ответ и решение

Построим дерево фано:

PIC

Свободными остаются листья с кодами 00, 100 и 1010. Слово ТОПОТ содержит 11 двоичных знаков, 4 из которых занимают буквы О. Тогда сумма двух букв Т и буквы П равна 7. Присвоим букве Т код 00, букве П код 100. Тогда слово ВЕТО содержит 4+ 3+ 2 + 2 = 11  двоичных знаков. Отметим, что остался свободный лист с кодом 1010, из него можно будет добавить ветки для всех остальных букв русского алфавита.

Ответ: 11

Ошибка.
Попробуйте повторить позже

Задача 7#57440

По каналу связи передаются сообщения, содержащие только буквы из набора: Е, К, Л, М, О, П, С. Для передачи используется двоичный код, удовлетворяющий условию Фано. Кодовые слова для некоторых букв известны: Е —- 001, О —- 11, Л – 10. Для четырёх оставшихся букв К, М, П и С кодовые слова неизвестны.

Какое количество двоичных знаков потребуется для кодирования слова КОМПЛЕКС, если известно, что оно закодировано минимально возможным количеством двоичных знаков?

Примечание. Условие Фано означает, что ни одно кодовое слово не является началом другого кодового слова.

Показать ответ и решение

Построим дерево фано:

PIC

Так как неизвестных букв 4, то продлим листья до нужного количества. Букве К соответсвует код длины 3, так как она встречается в слове 2 раза. Остальным буквам присвоим коды длины 3 и 4: букве М – 010, П – 0110, С – 0111.

Тогда итоговая длина двоичного кода будет: 3 + 2+ 3+ 4+ 2 + 3+ 3+ 4 = 24

Ответ: 24

Ошибка.
Попробуйте повторить позже

Задача 8#57439

По каналу связи передаются сообщения, содержащие только буквы из набора: В, Ж, З, М, Н, О, С, Т, Ь. Для передачи используется двоичный код, удовлетворяющий условию Фано. Кодовые слова для некоторых букв известны: В – 11111, Ж — 1110, М — 01110, Т — 00, С — 11110, Ь – 010. Для трёх оставшихся букв З, О и Н кодовые слова неизвестны.

Какое количество двоичных знаков потребуется для кодирования слова ВОЗМОЖНОСТЬ, если известно, что оно закодировано минимально возможным количеством двоичных знаков?

Примечание. Условие Фано означает, что ни одно кодовое слово не является началом другого кодового слова.

Показать ответ и решение

Построим дерево фано:

PIC

Остается 3 свободных листа, в лист, у которого код имеет длину 2 запишем букву О, так как она в искомом слове встречается трижды. Букву Н запишем в лист с длиной кода 3, букву З запишем в лист с длиной кода 4.

Тогда итоговая длина двоичного кода будет: 5 + 2+ 4+ 5+ 2 + 4+ 3+ 2 +5 + 2+ 3 = 37

Ответ: 37

Ошибка.
Попробуйте повторить позже

Задача 9#56951

По каналу связи передаются сообщения, содержащие только восемь букв: А, В, Е, З, И, Н, О, Р. Для передачи используется двоичный код, удовлетворяющий условию Фано. Кодовые слова для некоторых букв известны: А — 101, В — 010, И — 00. Какое наименьшее количество двоичных знаков потребуется для кодирования слова НЕВЕЗЕНИЕ?

Примечание. Условие Фано означает, что ни одно кодовое слово не является началом другого кодового слова.

Показать ответ и решение

Буква Е повторяется в слове НЕВЕЗЕНИЕ чаще всего, поэтому закодируем её кодовым словом 11. Вторая самая встречаемая буква — это Н, поэтому её закодируем словом 011. З — 1000, буквы О и Р тоже необходимо закодировать несмотря на то, что в самом слове они не используются, поэтому им выделим слова 10011 и 10010 соответственно. Тогда количество двоичных знаков, которые потребуются для слова НЕВЕЗЕНИЕ равно 3 + 2+ 3+ 2+ 4 + 2+ 3+ 2 +2 = 23  .

Ответ: 23

Ошибка.
Попробуйте повторить позже

Задача 10#56433

Для кодирования букв А, Л, Р, И решили использовать двоичное представление чисел 0, 1, 2, 3 соответственно (с сохранением одного незначащего нуля в случае одноразрядного представления). Закодируйте последовательность букв ЛИРА таким способом и результат запишите десятичным кодом.

Показать ответ и решение

Представим числа из десятичной системы счисления в двоичную.

A Л Р И
0 1 2 3
00 01 10 11

Последовательности букв ЛИРА будет выглядеть следующим образом в 2сс: 01111000
       2  или же 120 в десятичной.

Ответ: 120

Ошибка.
Попробуйте повторить позже

Задача 11#55055

По каналу связи передаются сообщения, содержащие только пять букв: А , Ж , К , Л , О. Для передачи используется двоичный код, удовлетворяющий условию Фано. Кодовые слова для некоторых букв известны: Ж — 10, К — 00. Какое наименьшее количество двоичных знаков потребуется для кодирования слова КОЛЛАЖ?

Примечание. Условие Фано означает, что ни одно кодовое слово не является началом другого кодового слова.

Показать ответ и решение

Построим дерево Фано:

PIC

Остается 2 свободных места. Так как буква Л встречается в слове дважды, то присвоим ей длину 2. Тогда буквы А и О будут иметь длины 3(для этого продлим одну из свободных веток). Тогда итоговая длина двоичного кода будет: 2 + 3 + 2 + 2 + 3 + 2 = 14.

Ответ: 14

Ошибка.
Попробуйте повторить позже

Задача 12#55054

Для кодирования букв A , B , C , D , E , F , G , H было решено использовать трехразрядные последовательные двоичные числа (от 000 до 111). Закодируйте последовательность символов EDFGBBAC и запишите полученное двоичное число в восьмеричной системе счисления. Систему счисления в ответе указывать не нужно.

Показать ответ и решение

Закодируем двоичным кодом каждую букву:

А – 000, B – 001, C – 010, D – 011, E – 100, F – 101, G – 110, H – 111

Закодируем последовательность символов EDFGBBAC, используя кодировку букв.

Получим 100011101110001001000010.

После перевода в восьмеричную систему счисления получим, что 1000111011100010010000102 = 435611028  .

Ответ: 43561102

Ошибка.
Попробуйте повторить позже

Задача 13#55052

По каналу связи передаются сообщения, содержащие только шесть букв: Ж , З , К , О , Р , У. Для передачи используется двоичный код, удовлетворяющий условию Фано. Кодовые слова для некоторых букв известны: Ж — 01, К — 10, О — 001. Какое наименьшее количество двоичных знаков потребуется для кодирования слова КРУЖОК?

Примечание. Условие Фано означает, что ни одно кодовое слово не является началом другого кодового слова.

Показать ответ и решение

Построим дерево Фано:

PIC

Остается 2 свободных места. Так как нам надо вместить еще три буквы: З, Р, У, то продлим ветку 11, тогда присвоим этим буквам коды З - 000, Р - 110, У - 111. Тогда итоговая длина двоичного кода будет: 2 + 3 + 3 + 2 + 3 + 2 = 15.

Ответ: 15

Ошибка.
Попробуйте повторить позже

Задача 14#50669

Для кодирования букв А, Б, В, Г решили использовать двухразрядные последовательные двоичные числа (от 00 до 11, соответственно). Закодируйте таким образом последовательность символов ББГА и запишите полученное двоичное число в шестнадцатеричной системе счисления.

Показать ответ и решение

Закодируем двоичным кодом каждую букву:

А — 00

Б — 01

В — 10

Г — 11

Закодируем последовательность букв ББГА, используя кодировку букв:

Б  Б   Г   А

01 01 11 00

Получаем 010111002  ; после перевода в шестнадцатеричную сс получим 5C.

Ответ: 5C

Ошибка.
Попробуйте повторить позже

Задача 15#49354

Для кодирования букв Z  , X  , C  , G  используются трехразрядные последовательные двоичные числа, начинающиеся с 1 (от 100 до 111 соответственно). Закодируйте таким образом последовательность символов CGZX  и запишите результат в шестнадцатеричном коде.

Показать ответ и решение

Присвоим каждой букве свой код для кодирования: Z − 100,X − 101,C − 110,G − 111  .

Тогда последовательность CGZX  кодируется как: 1101111001012  .

Разобьем последовательность на четверки справа. Получим, что 01012 = 516,11102 = E16,11012 = D16  . Получаем ответ: DE5

Ответ: de5

Ошибка.
Попробуйте повторить позже

Задача 16#6697

Для кодирования букв А, К, Е, Т, Р решили использовать двоичное представление чисел 0, 1, 2, 3 и 4 соответственно (с сохранением одного незначащего нуля в случае одноразрядного представления). Закодируйте последовательность букв РАКЕТА таким способом и результат запишите восьмеричным кодом.

Показать ответ и решение

Для начала представим коды для букв в двоичном виде:

А — 00

К — 01

Е — 10

Т — 11

Р — 100

Закодируем слово РАКЕТА — 10000011011002   . Переведем в восьмеричную систему счисления: 1000001101100   =  1|000 |001 |101 |100 =  10154
               2                            8   .

Ответ: 10154

Ошибка.
Попробуйте повторить позже

Задача 17#6696

Для кодирования букв О, Э, В, Р, Ж решили использовать двоичное представление чисел 0, 1, 2, 3 и 4 соответственно (с сохранением одного незначащего нуля в случае одноразрядного представления). Закодируйте последовательность букв РОЖЭВЭ таким способом и результат запишите восьмеричным кодом.

Показать ответ и решение

Для начала представим коды для букв в двоичном виде:

О — 00

Э — 01

В — 10

Р — 11

Ж — 100

Закодируем слово РОЖЭВЭ — 11001000110012   . Переведем в восьмеричную систему счисления: 1100100011001   =  1|100 |100 |011 |001 =  14431
               2                            8   .

Ответ: 14431

Ошибка.
Попробуйте повторить позже

Задача 18#6695

Для кодирования букв О, Э, В, Р, Ж решили использовать двоичное представление чисел 0, 1, 2, 3 и 4 соответственно (с сохранением одного незначащего нуля в случае одноразрядного представления). Закодируйте последовательность букв РОЖЭВЭ таким способом и результат запишите шестнадцатеричным кодом.

Показать ответ и решение

Для начала представим коды для букв в двоичном виде:

О — 00

Э — 01

В — 10

Р — 11

Ж — 100

Закодируем слово РОЖЭВЭ — 11001000110012   . Переведем в шестнадцатеричную систему счисления: 1100100011001   = 1 |1001 |0001 |1001  = 1919
               2                          16   .

Ответ: 1919

Ошибка.
Попробуйте повторить позже

Задача 19#5993

Для кодирования букв А, К, Е, Т, Р решили использовать двоичное представление чисел 0, 1, 2, 3 и 4 соответственно (с сохранением одного незначащего нуля в случае одноразрядного представления). Закодируйте последовательность букв РАКЕТА таким способом и результат запишите шестнадцатеричным кодом.

Показать ответ и решение

Для начала представим коды для букв в двоичном виде:

А — 00

К — 01

Е — 10

Т — 11

Р — 100

Закодируем слово РАКЕТА — 10000011011002   . Переведем в восьмеричную систему счисления: 1000001101100   =  1|0000 |0110|1100 = 106C
               2                           16   .

Ответ: 106C

Ошибка.
Попробуйте повторить позже

Задача 20#5992

Для кодирования букв О, А, Б, Т, Ь решили использовать двоичное представление чисел 0, 1, 2, 3 и 4 соответственно (с сохранением одного незначащего нуля в случае одноразрядного представления). Закодируйте последовательность букв БОТАТЬ таким способом и результат запишите шестнадцатеричным кодом.

Показать ответ и решение

Для начала представим коды для букв в двоичном виде:

О — 00

А — 01

Б — 10

Т — 11

Ь — 100

Закодируем слово БОТАТЬ — 10001101111002   . Переведем в шестнадцатеричную систему счисления: 1000110111100   =  1|0001 |1011|1100 = 11BC
               2                            16   .

Ответ: 11BC
Рулетка
Вы можете получить скидку в рулетке!