Чтобы перевести из восьмеричной в десятичную надо число(у нас 11) представить в виде суммы произведений степеней основания, а конкретнее
Складываем:
Теперь из десятичной переводим в двоичную:
Вначале 20/2=10(остаток 0), 10/2=5(остаток 0), 5/2=2(остаток 1),2/2=1(остаток 1)
И чтобы получить двоичную запись просто пишем остатки в обратом порядке:
Вариант 1
1) Перевод из десятичной системы в другую делаем через деление с остатком:
272 / 5 = 54 и остаток 2
54 / 5 = 10 и остаток 4
10 / 5 = 2 и остаток 0
Дальше делить некуда, т.к. два меньше пяти.
Составляем результат начиная с конца (цифра 2) и за ней ставим все остатки от деления. Получаем число 2042
То есть,
2) Делим:
2774 / 11 = 252 и остаток 2
252 / 11 = 22 и остаток 10
22 / 11 = 2 и остаток 0
Один остаток равен 10. Это уже два символа, а нам нужен один. В системах счисления с основанием больше 10 используют для этих целей буквы:
вместо 10 пишут A
вместо 11 пишут B
вместо 12 пишут C
вместо 13 пишут D
и так далее.
Поэтому, в нашем примере мы составим число 20A2
То есть,
3) Перевод в десятичную систему из других делается через умножение цифр в разрядах на "вес" каждого разряда.
4)
16=2 в степени 4, т.е.
1 символ = 4 бита
384*4=1536 бит = 1536/8 = 192 байт = 192/1024= 0,1875 Кб ответ: 0.1875 Кб
В изначально сообщение содержало 18 символов,
после перекодировки получим 288 бит, решаем уравнение:
288=128+x*16
x = 10
Ответ: 10 символов
<em>// PascalABC.NET 3.3, сборка 1583 от 25.11.2017</em>
<em>// Внимание! Если программа не работает, обновите версию!</em>
begin
var s:='Натюрморт';
Println(s[6:8]+s[9]+s[7:9],s[9]+s[7:])
end.
<u>Результат</u>
мотор торт