1. Шестнадцатиричное представление переводим в десятичное.
Записываем 4A98 в расширенной форме по степеням основания (т.е. 16 в нашем случае):
2. Шестнадцатиричное представление переводим в восьмеричное.
Поскольку
, перевод удобно сделать через промежуточную двоичную систему.
Каждую шестнадцатиричную цифру заменяем четырьмя двоичными цифрами (так называемой тетрАдой).
0100 1010 1001 1000 . 1011 1100 0010 (2)
Разбиваем двоичное число на триАды (по три разряда) влево и вправо от десятичной точки и каждую триаду заменяем восьмеричной цифрой (они по написанию совпадают с десятичными). Если разрядов для триады не хватает, дополняем их нулями слева для целой части и справа для дробной.
100101010011000.10111100001 (2)= 100 101 010 011 000.101 111 000 010=
45230.5702(8)
Ответ: 4A98.BC2(16)=19096.73486328125(10)=45230.5702(8)
<span>ftp://</span>ftp.roslin.com/2015/new/sort/novinka.avi
<span>a = int(input("a = "))
sise = <span>0
</span>for i in range(1,a+1,2):
print(i)
sise += i
print("Suma ",sise)</span>
В задании не указано, чем разделены группы в строке. Поэтому принято, что группа состоит из нулей и единиц, а разделителями групп может быть любое количество любых иных символов. Если это не так, просто вводите те символы-разделитеоли, каккие считаете нужными.
// PascalABC.NET 3.4.2, сборка 1790 от 15.09.2018
// Внимание! Если программа не работает, обновите версию!
begin
var a:=ReadlnString('Вводите:').MatchValues('[01]+')
.Where(s->s.Length.IsOdd).ToArray;
var b:=a.Select(w->w.ToCharArray.Where(c->c='1').Count).ToArray;
a.Zip(b,(p,q)->p+' - '+q).PrintLines
end.