ИКБО-22-23

Вариант №1

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Целое.

Выходные данные:

Шестнадцатиричная строка.

Тесты:

>>> main(19053644)
'0x1324500'

>>> main(18629615)
'0x1be3880'

>>> main(32620339)
'0xcfe300'

>>> main(8302935)
'0x15cfd00'

Вариант №2

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Десятичная строка.

Выходные данные:

Десятичная строка.

Тесты:

>>> main('34982046492')
'21743344770'

>>> main('11584647601')
'10603311403'

>>> main('9882520779')
'55968844580'

>>> main('56710943596')
'18119486675'

Вариант №3

Задача №8

Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.

Выходные данные:

Шестнадцатиричная строка.

Тесты:

>>> main({'A1': '0x0', 'A2': '0x16', 'A4': '0x36', 'A5': '0x2c', 'A6': '0x10'})
'0x858362c'

>>> main({'A1': '0x0', 'A2': '0x12', 'A4': '0x37', 'A5': '0x36', 'A6': '0x1c'})
'0xe6c3724'

>>> main({'A1': '0x1', 'A2': '0x14', 'A4': '0x98', 'A5': '0x23', 'A6': '0x1f'})
'0xfc69829'

>>> main({'A1': '0x0', 'A2': '0x1c', 'A4': '0x1df', 'A5': '0x1f', 'A6': '0x1d'})
'0xebfdf38'

Вариант №4

Задача №8

Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Десятичная строка.

Выходные данные:

Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.

Тесты:

>>> main('312766232')
('24', '0', '30', '82', '18')

>>> main('319957253')
('5', '0', '18', '9', '19')

>>> main('406717610')
('42', '0', '9', '31', '24')

>>> main('307236262')
('38', '0', '27', '40', '18')

Вариант №5

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Шестнадцатиричная строка.

Выходные данные:

Десятичная строка.

Тесты:

>>> main('0xc2ce3a403')
'99999549336'

>>> main('0x517c38542')
'64623772810'

>>> main('0x255eb4f15a')
'179908031946'

>>> main('0x35358d09c7')
'111984217834'

Вариант №6

Задача №8

Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.

Выходные данные:

Десятичная строка.

Тесты:

>>> main({'G1': '0x6', 'G2': '0x4', 'G3': '0x7', 'G4': '0x18d'})
'814022'

>>> main({'G1': '0xc', 'G2': '0x4', 'G3': '0xa', 'G4': '0x1c4'})
'927052'

>>> main({'G1': '0xe', 'G2': '0x4', 'G3': '0xc', 'G4': '0x13f'})
'654926'

>>> main({'G1': '0x4', 'G2': '0x2', 'G3': '0xd', 'G4': '0xe7'})
'474788'

Вариант №7

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Десятичная строка.

Выходные данные:

Целое.

Тесты:

>>> main('30735063137')
8522833496

>>> main('24490892077')
21206457163

>>> main('32603453223')
25031671561

>>> main('33347628756')
3892350901

Вариант №8

Задача №8

Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Десятичная строка.

Выходные данные:

Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.

Тесты:

>>> main('11641227640')
('606', '496', '430', '5')

>>> main('1014236795')
('414', '320', '483', '0')

>>> main('9572324447')
('279', '225', '468', '4')

>>> main('8345995237')
('505', '348', '907', '3')

Вариант №9

Задача №8

Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.

Выходные данные:

Целое.

Тесты:

>>> main([('J1', '0x3'), ('J2', '0x9c'), ('J3', '0x3'), ('J4', '0x0'), ('J5', '0x8')])
134771

>>> main([('J1', '0x0'), ('J2', '0x22'), ('J3', '0x7'), ('J4', '0x1'), ('J5', '0x0')])
15496

>>> main([('J1', '0x0'), ('J2', '0xcf'), ('J3', '0x1'), ('J4', '0x1'), ('J5', '0x6')])
108348

>>> main([('J1', '0x1'), ('J2', '0xda'), ('J3', '0x2'), ('J4', '0x0'), ('J5', '0xa')])
166761

Вариант №10

Задача №8

Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.

Выходные данные:

Целое.

Тесты:

>>> main([('E1', '611'), ('E3', '1'), ('E4', '52'), ('E5', '6'), ('E6', '1')])
62136931

>>> main([('E1', '885'), ('E3', '7'), ('E4', '56'), ('E5', '7'), ('E6', '1')])
66642805

>>> main([('E1', '240'), ('E3', '2'), ('E4', '11'), ('E5', '2'), ('E6', '1')])
42680560

>>> main([('E1', '211'), ('E3', '5'), ('E4', '40'), ('E5', '2'), ('E6', '1')])
44605651

Вариант №11

Задача №8

Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.

Выходные данные:

Шестнадцатиричная строка.

Тесты:

>>> main((0, 1, 8, 167))
'0xa782'

>>> main((0, 6, 7, 819))
'0x3337c'

>>> main((0, 6, 5, 731))
'0x2db5c'

>>> main((1, 6, 8, 151))
'0x978d'

Вариант №12

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Десятичная строка.

Выходные данные:

Шестнадцатиричная строка.

Тесты:

>>> main('372590230')
'0x1ab12d46'

>>> main('325690632')
'0x149a11a5'

>>> main('529787531')
'0x9fd17ea'

>>> main('167078851')
'0x1a4f876b'

Вариант №13

Задача №8

Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Десятичная строка.

Выходные данные:

Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.

Тесты:

>>> main('88587172')
[('C1', '36'), ('C2', '238'), ('C3', '30'), ('C4', '0'), ('C5', '5'), ('C6', '1')]

>>> main('68116179')
[('C1', '19'), ('C2', '123'), ('C3', '61'), ('C4', '0'), ('C5', '0'), ('C6', '1')]

>>> main('22670081')
[('C1', '1'), ('C2', '172'), ('C3', '39'), ('C4', '1'), ('C5', '5'), ('C6', '0')]

>>> main('132094527')
[('C1', '63'), ('C2', '104'), ('C3', '62'), ('C4', '1'), ('C5', '15'), ('C6', '1')]

Вариант №14

Задача №8

Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Десятичная строка.

Выходные данные:

Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: целое.

Тесты:

>>> main('153814')
[('Y1', 6), ('Y2', 13), ('Y3', 11), ('Y4', 0), ('Y5', 2)]

>>> main('69964')
[('Y1', 12), ('Y2', 20), ('Y3', 2), ('Y4', 0), ('Y5', 1)]

>>> main('167156')
[('Y1', 4), ('Y2', 79), ('Y3', 1), ('Y4', 1), ('Y5', 2)]

>>> main('109426')
[('Y1', 2), ('Y2', 55), ('Y3', 5), ('Y4', 1), ('Y5', 1)]

Вариант №15

Задача №8

Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Десятичная строка.

Выходные данные:

Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.

Тесты:

>>> main('390027382')
('54', '33', '92')

>>> main('258395197')
('61', '48', '61')

>>> main('422442489')
('57', '23', '100')

>>> main('969983393')
('33', '22', '231')

Вариант №16

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Целое.

Выходные данные:

Десятичная строка.

Тесты:

>>> main(640529044)
'640310704'

>>> main(978730271)
'978613823'

>>> main(1034808980)
'1034575340'

>>> main(1070023349)
'1070257985'

Вариант №17

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Целое.

Выходные данные:

Шестнадцатиричная строка.

Тесты:

>>> main(21856414)
'0x18053080'

>>> main(490792807)
'0xe7507c0'

>>> main(322869187)
'0x97cfcc0'

>>> main(190939639)
'0x181d82c0'

Вариант №18

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Десятичная строка.

Выходные данные:

Десятичная строка.

Тесты:

>>> main('15957523')
'63826328'

>>> main('8477492')
'33913356'

>>> main('22977298')
'91908364'

>>> main('48509147')
'194039171'

Вариант №19

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Десятичная строка.

Выходные данные:

Десятичная строка.

Тесты:

>>> main('202312')
'296497'

>>> main('521425')
'333055'

>>> main('439716')
'148971'

>>> main('475447')
'225652'

Вариант №20

Задача №8

Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.

Выходные данные:

Десятичная строка.

Тесты:

>>> main(('4', '11', '4', '8', '2'))
'41564'

>>> main(('3', '11', '4', '3', '2'))
'36443'

>>> main(('6', '3', '2', '0', '2'))
'33054'

>>> main(('2', '11', '4', '11', '0'))
'11866'

Вариант №21

Задача №8

Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Целое.

Выходные данные:

Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: шестнадцатиричная строка.

Тесты:

>>> main(408530)
('0xd2', '0x3', '0xe', '0x0', '0x3')

>>> main(663924)
('0x74', '0x1', '0x8', '0x0', '0x5')

>>> main(1566311)
('0x67', '0x2', '0x9', '0x7', '0xb')

>>> main(1113360)
('0x10', '0x1', '0xf', '0x3', '0x8')

Вариант №22

Задача №8

Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.

Выходные данные:

Целое.

Тесты:

>>> main({'Y1': '0x1', 'Y2': '0x140', 'Y3': '0x43', 'Y4': '0x38', 'Y5': '0x32', 'Y6': '0xaf'})
1506652992769

>>> main({'Y1': '0x1', 'Y2': '0x2f', 'Y3': '0x59', 'Y4': '0xc', 'Y5': '0x3a', 'Y6': '0xc5'})
1696122376381

>>> main({'Y1': '0x2', 'Y2': '0x200', 'Y3': '0x37', 'Y4': '0x6', 'Y5': '0x2', 'Y6': '0x53'})
713105307650

>>> main({'Y1': '0x0', 'Y2': '0x299', 'Y3': '0x96', 'Y4': '0x3e', 'Y5': '0x10', 'Y6': '0xbe'})
1633226943076

Вариант №23

Задача №8

Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Десятичная строка.

Выходные данные:

Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.

Тесты:

>>> main('140442572613')
{'N1': '5', 'N2': '58', 'N3': '242', 'N5': '204', 'N6': '65'}

>>> main('46032421196')
{'N1': '12', 'N2': '10', 'N3': '480', 'N5': '222', 'N6': '21'}

>>> main('380145491511')
{'N1': '23', 'N2': '49', 'N3': '507', 'N5': '9', 'N6': '177'}

>>> main('41501674440')
{'N1': '8', 'N2': '30', 'N3': '41', 'N5': '166', 'N6': '19'}

Вариант №24

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Целое.

Выходные данные:

Целое.

Тесты:

>>> main(838703106327)
824688679352

>>> main(379064806688)
343735928065

>>> main(1019433701957)
962296740650

>>> main(217000826302)
206200783349

Вариант №25

Задача №8

Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Целое.

Выходные данные:

Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: целое.

Тесты:

>>> main(34743339)
[('L1', 11), ('L2', 66), ('L3', 2), ('L4', 530)]

>>> main(53195555)
[('L1', 3), ('L2', 50), ('L3', 11), ('L4', 811)]

>>> main(26024009)
[('L1', 9), ('L2', 132), ('L3', 1), ('L4', 397)]

>>> main(24433016)
[('L1', 8), ('L2', 23), ('L3', 13), ('L4', 372)]

Вариант №26

Задача №8

Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Целое.

Выходные данные:

Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: целое.

Тесты:

>>> main(16582150381)
[('G1', 45), ('G2', 35), ('G3', 24), ('G4', 15), ('G5', 113), ('G6', 15)]

>>> main(56767252216)
[('G1', 56), ('G2', 27), ('G3', 24), ('G4', 11), ('G5', 222), ('G6', 52)]

>>> main(55476384939)
[('G1', 43), ('G2', 18), ('G3', 7), ('G4', 19), ('G5', 170), ('G6', 51)]

>>> main(13642344735)
[('G1', 31), ('G2', 36), ('G3', 26), ('G4', 18), ('G5', 180), ('G6', 12)]

Вариант №27

Задача №8

Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Целое.

Выходные данные:

Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.

Тесты:

>>> main(229676398)
{'W1': '366', 'W2': '74', 'W3': '0', 'W4': '3', 'W5': '27'}

>>> main(126801138)
{'W1': '242', 'W2': '106', 'W3': '7', 'W4': '0', 'W5': '15'}

>>> main(120217698)
{'W1': '98', 'W2': '48', 'W3': '5', 'W4': '2', 'W5': '14'}

>>> main(115181612)
{'W1': '44', 'W2': '196', 'W3': '6', 'W4': '5', 'W5': '13'}

Вариант №28

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Целое.

Выходные данные:

Целое.

Тесты:

>>> main(73637276)
242643200

>>> main(91577168)
91046144

>>> main(54265071)
1293312

>>> main(196140883)
58543616

Вариант №29

Задача №8

Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: целое.

Выходные данные:

Десятичная строка.

Тесты:

>>> main([('E1', 1), ('E3', 4), ('E4', 0), ('E5', 447)])
'915521'

>>> main([('E1', 1), ('E3', 3), ('E4', 1), ('E5', 153)])
'313521'

>>> main([('E1', 1), ('E3', 2), ('E4', 14), ('E5', 468)])
'960289'

>>> main([('E1', 0), ('E3', 2), ('E4', 11), ('E5', 357)])
'732576'

Вариант №30

Задача №8

Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.

Выходные данные:

Шестнадцатиричная строка.

Тесты:

>>> main([('C1', '0xd'), ('C2', '0xf'), ('C3', '0x4'), ('C4', '0x2f')])
'0xbc8fd'

>>> main([('C1', '0x0'), ('C2', '0x1c'), ('C3', '0x4'), ('C4', '0x11')])
'0x449c0'

>>> main([('C1', '0x1'), ('C2', '0x7'), ('C3', '0x19'), ('C4', '0x11')])
'0x47271'

>>> main([('C1', '0x2'), ('C2', '0xa'), ('C3', '0x1a'), ('C4', '0xa')])
'0x2b4a2'

Вариант №31

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Шестнадцатиричная строка.

Выходные данные:

Десятичная строка.

Тесты:

>>> main('0x1f7003')
'2033280'

>>> main('0x1694c1')
'1395968'

>>> main('0x108a7f')
'1089792'

>>> main('0xbe835')
'690048'

Вариант №32

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Шестнадцатиричная строка.

Выходные данные:

Десятичная строка.

Тесты:

>>> main('0x1524e3aa4e')
'60748203337'

>>> main('0x3088f90a68')
'65070435362'

>>> main('0x20a392d5b2')
'246341961768'

>>> main('0x4b2532c30')
'160037863724'

Вариант №33

Задача №8

Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Целое.

Выходные данные:

Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.

Тесты:

>>> main(184926249)
[('Q2', '224'), ('Q3', '2'), ('Q4', '176')]

>>> main(297914254)
[('Q2', '231'), ('Q3', '0'), ('Q4', '284')]

>>> main(758105496)
[('Q2', '226'), ('Q3', '7'), ('Q4', '722')]

>>> main(757747274)
[('Q2', '39'), ('Q3', '5'), ('Q4', '722')]

Вариант №34

Задача №8

Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Десятичная строка.

Выходные данные:

Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: целое.

Тесты:

>>> main('7848291')
[('D1', 35), ('D2', 1), ('D3', 961), ('D4', 1), ('D5', 14)]

>>> main('1888597')
[('D1', 21), ('D2', 1), ('D3', 209), ('D4', 1), ('D5', 3)]

>>> main('19336892')
[('D1', 60), ('D2', 2), ('D3', 782), ('D4', 1), ('D5', 36)]

>>> main('4417415')
[('D1', 7), ('D2', 2), ('D3', 871), ('D4', 0), ('D5', 8)]

Вариант №35

Задача №8

Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.

Выходные данные:

Целое.

Тесты:

>>> main({'N1': '0x2a', 'N2': '0x4', 'N4': '0x0'})
298

>>> main({'N1': '0x2c', 'N2': '0x0', 'N4': '0x2'})
4140

>>> main({'N1': '0x17', 'N2': '0x3', 'N4': '0x3'})
6359

>>> main({'N1': '0x0', 'N2': '0x4', 'N4': '0x0'})
256

Вариант №36

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Десятичная строка.

Выходные данные:

Десятичная строка.

Тесты:

>>> main('16280853')
'2816769'

>>> main('25443784')
'26314497'

>>> main('9538189')
'18518530'

>>> main('15490593')
'4386562'

Вариант №37

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Десятичная строка.

Выходные данные:

Десятичная строка.

Тесты:

>>> main('576116')
'609923'

>>> main('615612')
'825221'

>>> main('783756')
'962959'

>>> main('484953')
'314173'

Вариант №38

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Десятичная строка.

Выходные данные:

Шестнадцатиричная строка.

Тесты:

>>> main('2401615085')
'0x28f1ed'

>>> main('1328798750')
'0x34f01e'

>>> main('4095503647')
'0x1f431f'

>>> main('570110434')
'0x321ee2'

Вариант №39

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Целое.

Выходные данные:

Десятичная строка.

Тесты:

>>> main(2702623)
'3439176'

>>> main(1618612)
'710184'

>>> main(4154287)
'4112344'

>>> main(524122)
'2974200'

Вариант №40

Задача №8

Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Шестнадцатиричная строка.

Выходные данные:

Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.

Тесты:

>>> main('0xff4128')
{'V1': '0x28', 'V2': '0x1', 'V3': '0xa', 'V5': '0x1f'}

>>> main('0x3b6a23')
{'V1': '0x23', 'V2': '0xa', 'V3': '0xb', 'V5': '0x7'}

>>> main('0xdea290')
{'V1': '0x90', 'V2': '0x2', 'V3': '0x5', 'V5': '0x1b'}

>>> main('0x511e2')
{'V1': '0xe2', 'V2': '0x11', 'V3': '0x8', 'V5': '0x0'}