ИНБО-22-23

Вариант №1

Задача №8

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

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

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

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

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

Тесты:

>>> main('0x35f89f5')
[('B1', '5'), ('B2', '62'), ('B3', '4'), ('B4', '56'), ('B5', '215')]

>>> main('0x3a99728')
[('B1', '0'), ('B2', '37'), ('B3', '3'), ('B4', '25'), ('B5', '234')]

>>> main('0x3c2a3c3')
[('B1', '3'), ('B2', '56'), ('B3', '1'), ('B4', '42'), ('B5', '240')]

>>> main('0x3dea150')
[('B1', '0'), ('B2', '42'), ('B3', '0'), ('B4', '42'), ('B5', '247')]

Вариант №2

Задача №8

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

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

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

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

Целое.

Тесты:

>>> main('0x1e708aa3')
280756891

>>> main('0x8c54c03')
89129779

>>> main('0xe367b0f')
375131791

>>> main('0x245180f')
84149783

Вариант №3

Задача №8

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

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

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

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

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

Тесты:

>>> main('0xfc6a0')
('0', '8', '2', '0', '483', '3')

>>> main('0xc1c7a')
('2', '14', '1', '0', '14', '3')

>>> main('0x65a59')
('1', '6', '1', '0', '301', '1')

>>> main('0x471e')
('2', '7', '0', '1', '35', '0')

Вариант №4

Задача №8

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

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

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

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

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

Тесты:

>>> main('0xa549')
'0x2548c'

>>> main('0x6469d')
'0x469c7'

>>> main('0x2ff80')
'0x7f809'

>>> main('0x7595e')
'0x595f3'

Вариант №5

Задача №8

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

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

Целое.

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

Целое.

Тесты:

>>> main(112175728)
123003307

>>> main(125700982)
68611551

>>> main(93657742)
37035365

>>> main(43584092)
34912422

Вариант №6

Задача №8

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

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

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

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

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

Тесты:

>>> main('0x812')
('0x2', '0x0', '0x1', '0x10')

>>> main('0xa9c')
('0x4', '0x1', '0x1', '0x15')

>>> main('0x15bc')
('0x4', '0x1', '0x3', '0x2b')

>>> main('0x1ad9')
('0x1', '0x1', '0x5', '0x35')

Вариант №7

Задача №8

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

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

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

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

Целое.

Тесты:

>>> main('0x3ac34')
351284

>>> main('0x1e2c7')
200391

>>> main('0x5bf55')
388949

>>> main('0x3b6a7')
368295

Вариант №8

Задача №8

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

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

Целое.

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

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

Тесты:

>>> main(87204184745)
[('D1', '9'), ('D2', '42'), ('D4', '220'), ('D5', '81')]

>>> main(687427949856)
[('D1', '0'), ('D2', '82'), ('D4', '222'), ('D5', '640')]

>>> main(522745090670)
[('D1', '14'), ('D2', '38'), ('D4', '864'), ('D5', '486')]

>>> main(761170329097)
[('D1', '9'), ('D2', '96'), ('D4', '916'), ('D5', '708')]

Вариант №9

Задача №8

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

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

Целое.

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

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

Тесты:

>>> main(11046279694)
('0xe', '0x0', '0x1b4', '0x34', '0x2', '0xa4')

>>> main(11774859393)
('0x1', '0x0', '0x31', '0x6b', '0x1', '0xaf')

>>> main(1308934989)
('0xd', '0x1', '0x186', '0x2', '0x2', '0x13')

>>> main(2889197271)
('0x17', '0x1', '0x34d', '0x1a', '0x0', '0x2b')

Вариант №10

Задача №8

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

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

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

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

Целое.

Тесты:

>>> main('76620732')
250628680

>>> main('11978687')
251506777

>>> main('125382005')
97930171

>>> main('120973335')
6126490

Вариант №11

Задача №8

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

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

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

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

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

Тесты:

>>> main('1374277422')
'0x78141c2e'

>>> main('553667835')
'0x600804fb'

>>> main('1967672889')
'0x701d0439'

>>> main('2077719003')
'0x481ef7db'

Вариант №12

Задача №8

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

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

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

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

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

Тесты:

>>> main('0xaa26b')
'1413802'

>>> main('0x1247ce')
'474916'

>>> main('0x2dec4')
'161325'

>>> main('0x3d8f5')
'1754685'

Вариант №13

Задача №8

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

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

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

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

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

Тесты:

>>> main([('M1', '0xc'), ('M3', '0x72'), ('M4', '0x7'), ('M5', '0x165'), ('M6', '0x27')])
'10562826764'

>>> main([('M1', '0xf'), ('M3', '0x4f'), ('M4', '0x4'), ('M5', '0x3da'), ('M6', '0x1f')])
'8580124431'

>>> main([('M1', '0xe'), ('M3', '0x12'), ('M4', '0x2'), ('M5', '0x137'), ('M6', '0x6')])
'1692209678'

>>> main([('M1', '0x0'), ('M3', '0x4e'), ('M4', '0x1'), ('M5', '0x157'), ('M6', '0x31')])
'13243305472'

Вариант №14

Задача №8

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

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

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

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

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

Тесты:

>>> main('0xfdcc8')
'0x33757'

>>> main('0x8f384')
'0xe3cc'

>>> main('0x345cd')
'0x57519'

>>> main('0xba8e7')
'0xe3e8d'

Вариант №15

Задача №8

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

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

Целое.

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

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

Тесты:

>>> main(12195318025)
(265, 114, 14, 11, 11)

>>> main(54171097991)
(903, 86, 13, 14, 50)

>>> main(35376451266)
(706, 115, 9, 30, 32)

>>> main(6286821916)
(540, 82, 11, 27, 5)

Вариант №16

Задача №8

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

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

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

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

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

Тесты:

>>> main('0x135091f35c')
'77853335078'

>>> main('0x2f00de9e2')
'6983277829'

>>> main('0x8c1965c7b')
'217970600849'

>>> main('0x8171bebf')
'198111131521'

Вариант №17

Задача №8

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

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

Целое.

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

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

Тесты:

>>> main(126761822)
[('L1', '0x1e'), ('L2', '0x1'), ('L3', '0x16'), ('L4', '0xe3'), ('L5', '0x78')]

>>> main(75693690)
[('L1', '0x3a'), ('L2', '0x1'), ('L3', '0x1c'), ('L4', '0x2f'), ('L5', '0x48')]

>>> main(64917180)
[('L1', '0x3c'), ('L2', '0x0'), ('L3', '0x1d'), ('L4', '0xe8'), ('L5', '0x3d')]

>>> main(95068436)
[('L1', '0x14'), ('L2', '0x0'), ('L3', '0x2'), ('L4', '0xaa'), ('L5', '0x5a')]

Вариант №18

Задача №8

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

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

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

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

Целое.

Тесты:

>>> main([('E1', '0x0'), ('E2', '0x1'), ('E3', '0x2'), ('E4', '0x0'), ('E5', '0xf')])
3920

>>> main([('E1', '0xb'), ('E2', '0x1'), ('E3', '0x1'), ('E4', '0x1'), ('E5', '0x65')])
26043

>>> main([('E1', '0x3'), ('E2', '0x0'), ('E3', '0x2'), ('E4', '0x1'), ('E5', '0x3')])
963

>>> main([('E1', '0xb'), ('E2', '0x1'), ('E3', '0x3'), ('E4', '0x1'), ('E5', '0x7b')])
31739

Вариант №19

Задача №8

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

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

Целое.

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

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

Тесты:

>>> main(3532835614654)
'1571745807872'

>>> main(866990076063)
'2959182545408'

>>> main(3098663249190)
'984450761728'

>>> main(1405278705591)
'3666711559680'

Вариант №20

Задача №8

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

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

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

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

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

Тесты:

>>> main([('B1', '0x214'), ('B2', '0x1'), ('B3', '0xe'), ('B4', '0x0')])
'30228'

>>> main([('B1', '0x3d7'), ('B2', '0x1'), ('B3', '0x0'), ('B4', '0x1')])
'67543'

>>> main([('B1', '0x16f'), ('B2', '0x1'), ('B3', '0xe'), ('B4', '0x0')])
'30063'

>>> main([('B1', '0x177'), ('B2', '0x0'), ('B3', '0x10'), ('B4', '0x1')])
'98679'

Вариант №21

Задача №8

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

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

Целое.

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

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

Тесты:

>>> main(33337679225)
('0x179', '0x4', '0x62', '0x6', '0x7')

>>> main(369779411)
('0xd3', '0x2', '0x2c1', '0x0', '0x0')

>>> main(21302681561)
('0x1d9', '0x5', '0x2b7', '0x7', '0x4')

>>> main(14531669660)
('0x9c', '0x7', '0x44', '0x3', '0x3')

Вариант №22

Задача №8

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

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

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

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

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

Тесты:

>>> main('0x1c9bfbefff')
'0x3dee4701ff'

>>> main('0x3d719227a2')
'0x18deb301a2'

>>> main('0x2bdee8f24a')
'0x3f75e9004a'

>>> main('0x17e8286659')
'0x340bf30059'

Вариант №23

Задача №8

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

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

Целое.

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

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

Тесты:

>>> main(262948743)
'0xfac463'

>>> main(23866985)
'0x16c2f4'

>>> main(60519903)
'0x39b76f'

>>> main(38349613)
'0x2492b6'

Вариант №24

Задача №8

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

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

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

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

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

Тесты:

>>> main('0x944a5dfd')
[('C1', 29), ('C2', 1), ('C3', 55), ('C4', 1), ('C5', 297), ('C6', 148)]

>>> main('0x1496aface')
[('C1', 14), ('C2', 0), ('C3', 43), ('C4', 3), ('C5', 427), ('C6', 329)]

>>> main('0x1116d933')
[('C1', 19), ('C2', 1), ('C3', 36), ('C4', 1), ('C5', 91), ('C6', 17)]

>>> main('0x2f8495247')
[('C1', 7), ('C2', 0), ('C3', 9), ('C4', 1), ('C5', 293), ('C6', 760)]

Вариант №25

Задача №8

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

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

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

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

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

Тесты:

>>> main('0x365c3')
'0x1ec9c'

>>> main('0x1b849')
'0x370c'

>>> main('0x23304')
'0x14660'

>>> main('0x1893e')
'0x13133'

Вариант №26

Задача №8

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

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

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

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

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

Тесты:

>>> main('0x1d18d405d')
('5', '212', '280', '7')

>>> main('0x1ff3eaafc')
('4', '234', '1011', '7')

>>> main('0x15b92ea48')
('0', '46', '441', '5')

>>> main('0x9a3e9ef8')
('0', '233', '419', '2')

Вариант №27

Задача №8

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

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

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

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

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

Тесты:

>>> main({'T1': '11', 'T2': '1', 'T3': '17', 'T4': '0'})
'571'

>>> main({'T1': '2', 'T2': '1', 'T3': '73', 'T4': '3'})
'14642'

>>> main({'T1': '3', 'T2': '0', 'T3': '126', 'T4': '3'})
'16323'

>>> main({'T1': '8', 'T2': '0', 'T3': '3', 'T4': '3'})
'12392'

Вариант №28

Задача №8

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

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

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

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

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

Тесты:

>>> main((430, 6, 0, 5, 0, 30))
'31624622'

>>> main((241, 1, 4, 7, 1, 29))
'31179505'

>>> main((269, 5, 0, 10, 0, 18))
'19204877'

>>> main((18, 6, 4, 11, 1, 24))
'26070034'

Вариант №29

Задача №8

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

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

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

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

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

Тесты:

>>> main([('G1', 18), ('G2', 2), ('G4', 1)])
'0x40052'

>>> main([('G1', 17), ('G2', 7), ('G4', 1)])
'0x400f1'

>>> main([('G1', 12), ('G2', 2), ('G4', 0)])
'0x4c'

>>> main([('G1', 28), ('G2', 2), ('G4', 1)])
'0x4005c'

Вариант №30

Задача №8

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

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

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

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

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

Тесты:

>>> main('0x36dd871')
[('H1', '1'), ('H2', '2'), ('H3', '3'), ('H5', '219')]

>>> main('0x1807ad0')
[('H1', '0'), ('H2', '2'), ('H3', '6'), ('H5', '96')]

>>> main('0x2898fa')
[('H1', '2'), ('H2', '3'), ('H3', '7'), ('H5', '10')]

>>> main('0xe293b')
[('H1', '3'), ('H2', '3'), ('H3', '9'), ('H5', '3')]

Вариант №31

Задача №8

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

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

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

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

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

Тесты:

>>> main({'D1': 2, 'D2': 164, 'D3': 23, 'D4': 31, 'D5': 10, 'D6': 126})
'0x1fa8fde92'

>>> main({'D1': 3, 'D2': 147, 'D3': 19, 'D4': 39, 'D5': 1, 'D6': 674})
'0xa8853ce4f'

>>> main({'D1': 1, 'D2': 185, 'D3': 12, 'D4': 98, 'D5': 9, 'D6': 802})
'0xc8a7132e5'

>>> main({'D1': 1, 'D2': 188, 'D3': 5, 'D4': 53, 'D5': 14, 'D6': 532})
'0x8539a96f1'

Вариант №32

Задача №8

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

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

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

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

Целое.

Тесты:

>>> main({'A1': '56', 'A2': '13', 'A3': '1', 'A4': '1', 'A5': '1'})
85688

>>> main({'A1': '69', 'A2': '1', 'A3': '3', 'A4': '3', 'A5': '1'})
121029

>>> main({'A1': '24', 'A2': '6', 'A3': '1', 'A4': '0', 'A5': '1'})
68376

>>> main({'A1': '19', 'A2': '12', 'A3': '0', 'A4': '1', 'A5': '1'})
83475

Вариант №33

Задача №8

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

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

Целое.

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

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

Тесты:

>>> main(368595321)
'0x10a2f37e'

>>> main(509214130)
'0x1bfb6596'

>>> main(195543632)
'0xf84a0e9'

>>> main(381248133)
'0x12c50bae'

Вариант №34

Задача №8

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

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

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

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

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

Тесты:

>>> main('69792510')
[('Y1', '0x6'), ('Y2', '0x5f'), ('Y3', '0x3c'), ('Y4', '0x0'), ('Y6', '0x21')]

>>> main('103223250')
[('Y1', '0x2'), ('Y2', '0x7a'), ('Y3', '0x3'), ('Y4', '0x1'), ('Y6', '0x31')]

>>> main('99768159')
[('Y1', '0x7'), ('Y2', '0x6b'), ('Y3', '0x15'), ('Y4', '0x0'), ('Y6', '0x2f')]

>>> main('97373185')
[('Y1', '0x1'), ('Y2', '0x0'), ('Y3', '0x33'), ('Y4', '0x1'), ('Y6', '0x2e')]

Вариант №35

Задача №8

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

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

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

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

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

Тесты:

>>> main(('0x3c8', '0x72', '0x0', '0x3'))
'0xdcbc8'

>>> main(('0x2f8', '0x2c', '0x1', '0x5'))
'0x16b2f8'

>>> main(('0x148', '0x45', '0x1', '0x7'))
'0x1f1548'

>>> main(('0x3b6', '0x4e', '0x0', '0x3'))
'0xd3bb6'

Вариант №36

Задача №8

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

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

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

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

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

Тесты:

>>> main([('Y1', 214), ('Y2', 2), ('Y4', 6), ('Y5', 1), ('Y6', 338)])
'2836267734'

>>> main([('Y1', 227), ('Y2', 6), ('Y4', 3), ('Y5', 15), ('Y6', 403)])
'3388671715'

>>> main([('Y1', 101), ('Y2', 6), ('Y4', 5), ('Y5', 14), ('Y6', 98)])
'829752933'

>>> main([('Y1', 33), ('Y2', 3), ('Y4', 1), ('Y5', 6), ('Y6', 127)])
'1068565281'

Вариант №37

Задача №8

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

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

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

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

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

Тесты:

>>> main({'K1': '0x3', 'K2': '0x4', 'K3': '0x1ff', 'K4': '0x6'})
'0x33fe43'

>>> main({'K1': '0x7', 'K2': '0xe', 'K3': '0x288', 'K4': '0x3'})
'0x1d10e7'

>>> main({'K1': '0xe', 'K2': '0x15', 'K3': '0x101', 'K4': '0x7'})
'0x3a035e'

>>> main({'K1': '0xd', 'K2': '0xe', 'K3': '0x36e', 'K4': '0x5'})
'0x2edced'

Вариант №38

Задача №8

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

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

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

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

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

Тесты:

>>> main('0xe5ee9')
{'C1': '0x1', 'C2': '0x4', 'C3': '0x7', 'C4': '0x5e', 'C5': '0x1c'}

>>> main('0x8fd3')
{'C1': '0x1', 'C2': '0x9', 'C3': '0x6', 'C4': '0xf', 'C5': '0x1'}

>>> main('0x8afc6')
{'C1': '0x0', 'C2': '0x3', 'C3': '0x6', 'C4': '0x2f', 'C5': '0x11'}

>>> main('0xd4a93')
{'C1': '0x1', 'C2': '0x9', 'C3': '0x4', 'C4': '0x4a', 'C5': '0x1a'}

Вариант №39

Задача №8

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

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

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

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

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

Тесты:

>>> main('0x70e383')
'0x18700e13'

>>> main('0xc839c5e')
'0x1cb316e'

>>> main('0x12d23f65')
'0x91cbdb5'

>>> main('0xeceff0a')
'0x77bbc3a'

Вариант №40

Задача №8

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

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

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

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

Целое.

Тесты:

>>> main('0x12f9d5')
1693022

>>> main('0x90b3f')
737057

>>> main('0x12c466')
288342

>>> main('0x1de6dc')
449727