← К задачамОткрыть курс →
Сколько бит на символ
В алфавите alphabet_size различных символов. По алфавитному подходу каждый символ кодируется одинаковым числом бит i, причём 2**i должно быть не меньше мощности алфавита.
Напишите функцию bits_per_symbol(alphabet_size), которая возвращает наименьшее целое i, при котором 2**i >= alphabet_size. Это и есть информационный вес одного символа в битах.
Для алфавита из одного символа i = 0. Решите задачу без math.log — подбором степени двойки.
Примеры:
bits_per_symbol(2) -> 1
bits_per_symbol(32) -> 5
bits_per_symbol(256) -> 8
bits_per_symbol(3) -> 2 # 2**2 = 4 >= 3
📖 Теория по теме:Измерение информации: биты, байты и алфавитный подход
Курс по теме
Пройдите курс «Python с нуля» — по шагам, с проверкой
8 уроков · ~14 ч · теория, упражнения и экзамен с бейджем
def bits_per_symbol(alphabet_size):
# верните минимальное i, при котором 2**i >= alphabet_size
# ваш код
pass
Здесь появится результат. Напиши решение слева и нажми «Проверить код».
Для запуска тестов необходима авторизация.