надо посчитать количество символов в сообщении: 3 * 25 * 60 = 4500; сообщение занимает 1125 байт, посчитаем, сколько байт занимает каждый символ: 1125 / 4500 = 0.25; т.к. символ занимает 0.25 байт, одним байтом можно закодировать 4 символа. байт состоит из 8 бит. 8 / 4 = 2 (количество битов чтобы закодировать каждый символ) двумя битами можно закодировать 4 символа, значит в алфавите может быть до четырех символов
лимпомпончик за это.
def translate(inp: str, to: str):
if to == "dobosovski" :
return inp.replace("0", "A").replace("1", "B")
elif to == "feimosovski":
return inp.replace("A", "0").replace("B", "1")
return inp
print("перевод на добосовский: ")
dres = translate(input(), "dobosovski")
print("результат >>", dres)
print("перевод на феймосовский: ")
fres = translate(input(), "feimosovski")
print("результат >>", fres)
Объяснение:
функция translate принимает 2 параметра: inp и to
inp - строка, которую нужно перевести
to - на какой язык
если to == dobosovski, то меняем 0 на A, 1 на B
если to == feimosovski, A на 0, B на 1
если to не равен ни feimosovski, ни dobosovski - вернем строку, которую нужно перевести
Поделитесь своими знаниями, ответьте на вопрос:
Сообщение занимает 3 страницы по 25 строк. в каждой строке записано по 60 символов. сколько символов в использованном алфавите, если сообщение содержит 1125 байтов
1) 3 * 25 * 60 = 4500 - количество символов в сообщении 2) 1125 * 8 = 9000 бит - занимает всё сообщение
30 9000/ 4500 = 2 бит - занимает один символ
с 2 бит можно закодировать 4 символа (2^2=4)ответ: в использованном алфавите 4 символа