ИНБО-13-23

Вариант №1

Задача №8

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

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

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

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

Целое.

Тесты:

>>> main('0x36cb034')
52698840

>>> main('0x42b109')
55345284

>>> main('0x763db31')
93167303

>>> main('0x2c6aed2')
43478412

Вариант №2

Задача №8

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

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

Целое.

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

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

Тесты:

>>> main(141480059)
[('E1', '3'), ('E2', '30'), ('E3', '0'), ('E4', '10'), ('E5', '221'), ('E6', '8')]

>>> main(146589732)
[('E1', '0'), ('E2', '9'), ('E3', '0'), ('E4', '9'), ('E5', '377'), ('E6', '8')]

>>> main(251714718)
[('E1', '2'), ('E2', '39'), ('E3', '2'), ('E4', '11'), ('E5', '1'), ('E6', '15')]

>>> main(59684301)
[('E1', '1'), ('E2', '115'), ('E3', '2'), ('E4', '6'), ('E5', '285'), ('E6', '3')]

Вариант №3

Задача №8

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

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

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

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

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

Тесты:

>>> main('674816353')
('1', '176', '643')

>>> main('763426810')
('0', '509', '728')

>>> main('200958869')
('1', '458', '191')

>>> main('208941413')
('1', '178', '199')

Вариант №4

Задача №8

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

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

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

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

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

Тесты:

>>> main('902698')
'0x3156e'

>>> main('995197')
'0x7bef9'

>>> main('718661')
'0xba2d7'

>>> main('750906')
'0xa9d5b'

Вариант №5

Задача №8

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

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

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

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

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

Тесты:

>>> main((15, 488, 18))
'77496335'

>>> main((9, 786, 21))
'91299849'

>>> main((14, 145, 5))
'21565454'

>>> main((1, 181, 22))
'93016065'

Вариант №6

Задача №8

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

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

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

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

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

Тесты:

>>> main('0x1839b87')
{'B1': '391', 'B2': '13', 'B3': '14', 'B4': '3'}

>>> main('0xa73314c')
{'B1': '332', 'B2': '24', 'B3': '460', 'B4': '20'}

>>> main('0x3ee2e2e')
{'B1': '46', 'B2': '23', 'B3': '440', 'B4': '7'}

>>> main('0xd25ca8c')
{'B1': '140', 'B2': '5', 'B3': '151', 'B4': '26'}

Вариант №7

Задача №8

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

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

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

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

Целое.

Тесты:

>>> main(('14', '341', '40', '52', '1', '79'))
21395810990

>>> main(('6', '300', '25', '90', '0', '86'))
23180240262

>>> main(('17', '291', '52', '37', '0', '48'))
12924560497

>>> main(('6', '277', '63', '20', '0', '230'))
61762167462

Вариант №8

Задача №8

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

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

Целое.

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

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

Тесты:

>>> main(473089433)
'429056421'

>>> main(166343605)
'458837844'

>>> main(405266643)
'221299151'

>>> main(224123855)
'486369975'

Вариант №9

Задача №8

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

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

Целое.

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

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

Тесты:

>>> main(164602)
{'T1': '250', 'T2': '1', 'T3': '0', 'T4': '20'}

>>> main(208079)
{'T1': '207', 'T2': '2', 'T3': '1', 'T4': '25'}

>>> main(131532)
{'T1': '460', 'T2': '0', 'T3': '0', 'T4': '16'}

>>> main(77071)
{'T1': '271', 'T2': '2', 'T3': '1', 'T4': '9'}

Вариант №10

Задача №8

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

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

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

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

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

Тесты:

>>> main('0x3e1bdc1')
{'P1': '0x1c1', 'P2': '0x3', 'P3': '0x1b', 'P4': '0x0', 'P5': '0x18', 'P6': '0x7'}

>>> main('0x25c53eb')
{'P1': '0x3eb', 'P2': '0x0', 'P3': '0x5', 'P4': '0x0', 'P5': '0x17', 'P6': '0x4'}

>>> main('0x3bce9a6')
{'P1': '0x1a6', 'P2': '0x2', 'P3': '0xe', 'P4': '0x0', 'P5': '0xf', 'P6': '0x7'}

>>> main('0x23d534a')
{'P1': '0x34a', 'P2': '0x0', 'P3': '0x15', 'P4': '0x0', 'P5': '0xf', 'P6': '0x4'}

Вариант №11

Задача №8

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

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

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

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

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

Тесты:

>>> main('0x1c95136cd')
('0x1', '0x1', '0xd9', '0x13', '0x2a', '0x39')

>>> main('0xf45bbad5')
('0x1', '0x1', '0x15a', '0x3b', '0x8b', '0x1e')

>>> main('0x1fa12d95a')
('0x2', '0x0', '0x12b', '0x2d', '0x42', '0x3f')

>>> main('0x6f4acec3')
('0x3', '0x0', '0x1d8', '0x2c', '0xe9', '0xd')

Вариант №12

Задача №8

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

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

Целое.

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

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

Тесты:

>>> main(88835628)
'0x3b25262'

>>> main(121993739)
'0x52dd1a3'

>>> main(124046365)
'0x47758c3'

>>> main(26333070)
'0x13b64f8'

Вариант №13

Задача №8

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

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

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

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

Целое.

Тесты:

>>> main([('Q1', '0x4'), ('Q2', '0x44'), ('Q3', '0x7f'), ('Q4', '0x3d')])
64485508

>>> main([('Q1', '0x19'), ('Q2', '0x12'), ('Q3', '0x5b'), ('Q4', '0x14')])
21344857

>>> main([('Q1', '0x9'), ('Q2', '0x6e'), ('Q3', '0x4c'), ('Q4', '0x3c')])
63229385

>>> main([('Q1', '0x9'), ('Q2', '0x67'), ('Q3', '0xfa'), ('Q4', '0x10')])
17804521

Вариант №14

Задача №8

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

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

Целое.

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

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

Тесты:

>>> main(67032650)
('0xa', '0x32', '0x6d', '0x7f')

>>> main(41011937)
('0x1', '0x57', '0x1c', '0x4e')

>>> main(45568269)
('0xd', '0x8', '0x75', '0x56')

>>> main(23154763)
('0xb', '0x2', '0x15', '0x2c')

Вариант №15

Задача №8

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

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

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

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

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

Тесты:

>>> main({'N1': '0x1d3', 'N2': '0xc6', 'N4': '0x13b'})
'169114540499'

>>> main({'N1': '0x1e2', 'N2': '0x110', 'N4': '0x1af'})
'231391642082'

>>> main({'N1': '0x31a', 'N2': '0x374', 'N4': '0x50'})
'42950578970'

>>> main({'N1': '0x3b0', 'N2': '0x5d', 'N4': '0xf0'})
'128849115056'

Вариант №16

Задача №8

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

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

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

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

Целое.

Тесты:

>>> main('0x198a80ec')
338785804

>>> main('0x11f767c8')
993977448

>>> main('0x1287a28b')
1024476585

>>> main('0x38e30ce6')
408712028

Вариант №17

Задача №8

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

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

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

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

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

Тесты:

>>> main({'K1': '18', 'K2': '41', 'K3': '30', 'K5': '102'})
'0x3300f532'

>>> main({'K1': '29', 'K2': '37', 'K3': '17', 'K5': '104'})
'0x34008cbd'

>>> main({'K1': '4', 'K2': '30', 'K3': '1', 'K5': '19'})
'0x9800bc4'

>>> main({'K1': '30', 'K2': '0', 'K3': '19', 'K5': '20'})
'0xa00981e'

Вариант №18

Задача №8

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

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

Целое.

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

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

Тесты:

>>> main(10591)
'0xa15f'

>>> main(57314)
'0x7fe2'

>>> main(44154)
'0xb47a'

>>> main(41423)
'0x85cf'

Вариант №19

Задача №8

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

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

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

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

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

Тесты:

>>> main((0, 11, 111, 5))
'170988'

>>> main((3, 12, 487, 32))
'1079795'

>>> main((1, 4, 1, 35))
'1146961'

>>> main((0, 2, 481, 95))
'3143752'

Вариант №20

Задача №8

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

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

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

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

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

Тесты:

>>> main('37877871')
'0x240defc'

>>> main('20201603')
'0x1350620'

>>> main('31548416')
'0x1e000b2'

>>> main('80391143')
'0x4cbcf55'

Вариант №21

Задача №8

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

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

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

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

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

Тесты:

>>> main({'G2': '0x28', 'G3': '0x0', 'G4': '0x0', 'G5': '0x1ae', 'G6': '0x45'})
'0x8ad702800'

>>> main({'G2': '0x1d', 'G3': '0x4', 'G4': '0x0', 'G5': '0x1fa', 'G6': '0x8'})
'0x10fd11d00'

>>> main({'G2': '0x16', 'G3': '0xf', 'G4': '0x0', 'G5': '0xf', 'G6': '0x9'})
'0x1207bd600'

>>> main({'G2': '0xe', 'G3': '0xc', 'G4': '0x1', 'G5': '0x67', 'G6': '0xa2'})
'0x14433f0e00'

Вариант №22

Задача №8

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

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

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

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

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

Тесты:

>>> main('0x9f51df')
'18742931'

>>> main('0x15799d7')
'27098922'

>>> main('0x147e49')
'31758530'

>>> main('0x9463a4')
'3819730'

Вариант №23

Задача №8

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

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

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

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

Целое.

Тесты:

>>> main('127290829')
20150625

>>> main('118926255')
44822881

>>> main('77514405')
51988961

>>> main('49765763')
91287392

Вариант №24

Задача №8

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

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

Целое.

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

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

Тесты:

>>> main(754738)
(2, 6, 1, 92)

>>> main(207259)
(3, 51, 2, 25)

>>> main(836726)
(6, 14, 1, 102)

>>> main(4167)
(7, 8, 4, 0)

Вариант №25

Задача №8

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

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

Целое.

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

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

Тесты:

>>> main(4769026863)
'1713824537'

>>> main(6731041036)
'4841861688'

>>> main(3217672825)
'5635282844'

>>> main(4110665142)
'3062193724'

Вариант №26

Задача №8

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

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

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

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

Целое.

Тесты:

>>> main('1069489052569')
1069458285037

>>> main('1837354186761')
1835875181565

>>> main('56912461561')
59325015967

>>> main('1281993526571')
1280423799399

Вариант №27

Задача №8

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

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

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

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

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

Тесты:

>>> main({'P1': 97, 'P2': 8, 'P3': 89, 'P4': 5})
'2804833'

>>> main({'P1': 10, 'P2': 9, 'P3': 140, 'P4': 0})
'287882'

>>> main({'P1': 41, 'P2': 10, 'P3': 100, 'P4': 19})
'10167593'

>>> main({'P1': 99, 'P2': 11, 'P3': 45, 'P4': 4})
'2190819'

Вариант №28

Задача №8

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

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

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

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

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

Тесты:

>>> main('1001')
{'A1': '1', 'A2': '20', 'A3': '1', 'A4': '7'}

>>> main('1450')
{'A1': '0', 'A2': '21', 'A3': '0', 'A4': '11'}

>>> main('1716')
{'A1': '0', 'A2': '26', 'A3': '0', 'A4': '13'}

>>> main('1980')
{'A1': '0', 'A2': '30', 'A3': '0', 'A4': '15'}

Вариант №29

Задача №8

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

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

Целое.

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

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

Тесты:

>>> main(12191760)
'27267604'

>>> main(29337399)
'33175031'

>>> main(14533723)
'31217947'

>>> main(6600611)
'4956623'

Вариант №30

Задача №8

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

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

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

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

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

Тесты:

>>> main('0xc9889')
[('A1', 137), ('A2', 0), ('A3', 38), ('A4', 4), ('A5', 1)]

>>> main('0x799ce0')
[('A1', 224), ('A2', 0), ('A3', 39), ('A4', 1), ('A5', 15)]

>>> main('0x7a8929')
[('A1', 41), ('A2', 1), ('A3', 34), ('A4', 2), ('A5', 15)]

>>> main('0x3ac490')
[('A1', 144), ('A2', 0), ('A3', 49), ('A4', 2), ('A5', 7)]

Вариант №31

Задача №8

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

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

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

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

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

Тесты:

>>> main('0x1900d1')
{'W1': '1', 'W2': '104', 'W3': '0', 'W4': '18', 'W5': '1', 'W6': '0'}

>>> main('0x1ba2d2')
{'W1': '0', 'W2': '361', 'W3': '8', 'W4': '23', 'W5': '1', 'W6': '0'}

>>> main('0x133df9')
{'W1': '1', 'W2': '252', 'W3': '15', 'W4': '6', 'W5': '1', 'W6': '0'}

>>> main('0x30a9d1')
{'W1': '1', 'W2': '232', 'W3': '10', 'W4': '1', 'W5': '1', 'W6': '1'}

Вариант №32

Задача №8

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

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

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

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

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

Тесты:

>>> main('13452158')
(30, 11, 1, 20, 102)

>>> main('5377741')
(13, 6, 7, 0, 41)

>>> main('10390340')
(4, 10, 5, 8, 79)

>>> main('2910761')
(9, 1, 5, 6, 22)

Вариант №33

Задача №8

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

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

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

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

Целое.

Тесты:

>>> main('0x36fc7c8')
104546315

>>> main('0x219654a')
53084166

>>> main('0x356342c')
28524549

>>> main('0x3fca16a')
84131855

Вариант №34

Задача №8

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

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

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

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

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

Тесты:

>>> main('0xe021ed7')
'0x87b43f'

>>> main('0x9ea9a80')
'0xaa6a1c4'

>>> main('0x88eabfa')
'0x3aafe94'

>>> main('0x6dbe92e')
'0x6fa4af3'

Вариант №35

Задача №8

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

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

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

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

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

Тесты:

>>> main('0x8b4fd7cc')
('0', '38', '47', '6', '335', '69')

>>> main('0x4c73ece1')
('1', '48', '25', '7', '115', '38')

>>> main('0xe7a72359')
('1', '44', '6', '1', '423', '115')

>>> main('0x534e7a8f')
('1', '7', '53', '3', '334', '41')

Вариант №36

Задача №8

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

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

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

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

Целое.

Тесты:

>>> main('614857512')
168601056

>>> main('694902355')
349530944

>>> main('252579664')
338791936

>>> main('203507585')
541172032

Вариант №37

Задача №8

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

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

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

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

Целое.

Тесты:

>>> main({'S1': 98, 'S2': 2, 'S3': 4, 'S4': 575})
37716578

>>> main({'S1': 150, 'S2': 26, 'S3': 2, 'S4': 348})
22829718

>>> main({'S1': 99, 'S2': 1, 'S3': 3, 'S4': 364})
23880035

>>> main({'S1': 62, 'S2': 21, 'S3': 0, 'S4': 544})
35657022

Вариант №38

Задача №8

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

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

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

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

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

Тесты:

>>> main('0xa4f38a1')
('1', '20', '15', '82')

>>> main('0xba7f133')
('3', '38', '7', '93')

>>> main('0x653dde4b')
('3', '201', '29', '809')

>>> main('0x46040e5c')
('4', '203', '4', '560')

Вариант №39

Задача №8

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

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

Целое.

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

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

Тесты:

>>> main(60783841)
'0x7dcec3'

>>> main(4223597)
'0x1e1da'

>>> main(63726588)
'0x31bff9'

>>> main(16961359)
'0xb349e'

Вариант №40

Задача №8

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

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

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

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

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

Тесты:

>>> main('0x555cdc')
'5614812'

>>> main('0x7b71cc')
'8042956'

>>> main('0x183572d')
'25406253'

>>> main('0x387017')
'3684375'