ИКБО-35-22

Вариант №1

Задача №8

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

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

Целое.

0 7 8 14 15 16 17 21 22 Z1 Z2 Z3 Z4 Z5

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

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

0 1 2 6 7 8 14 15 22 Z3 Z4 Z5 Z2 Z1

Тесты:

>>> main(1373918)
'7304745'

>>> main(6251045)
'1237694'

>>> main(8264115)
'5872124'

>>> main(4712240)
'1599375'

Вариант №2

Задача №8

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

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

Шестнадцатиричная строка.
0 5 6 13 14 17 18 M1 M2 M3 19 21 22 27 28 37 M5 M6

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

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

Тесты:

>>> main('0x3ed0e8aab2')
('0x32', '0xaa', '0x2', '0x3', '0x3ed')

>>> main('0x383659ed11')
('0x11', '0xb4', '0x7', '0x19', '0x383')

>>> main('0x1cd44ecce5')
('0x25', '0x33', '0xb', '0x11', '0x1cd')

>>> main('0x396128dd3a')
('0x3a', '0x74', '0x3', '0x4', '0x396')

Вариант №3

Задача №8

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

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

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

0 6 7 11 12 15 16 22 P1 P2 P3 P4

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

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

0 4 5 11 12 18 19 22 P2 P1 P4 P3

Тесты:

>>> main('0x2a7dce')
'3844571'

>>> main('0x38fd04')
'8093850'

>>> main('0x168db2')
'4286043'

>>> main('0x59ee30')
'7706140'

Вариант №4

Задача №8

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

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

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

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

Шестнадцатиричная строка.
0 3 4 13 14 15 Q2 Q3 16 21 22 31 Q3 Q4

Тесты:

>>> main(('0x1ff', '0x9e', '0x27c'))
'0x9f279ff0'

>>> main(('0x253', '0xdc', '0x3d6'))
'0xf5b72530'

>>> main(('0x1c4', '0xcc', '0x3fd'))
'0xff731c40'

>>> main(('0x23e', '0xb5', '0x103'))
'0x40ed63e0'

Вариант №5

Задача №8

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

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

Целое.
0 5 6 9 10 11 12 20 I1 I2 I3

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

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

Тесты:

>>> main(2075)
[('I1', '27'), ('I2', '0'), ('I3', '2')]

>>> main(3702)
[('I1', '54'), ('I2', '9'), ('I3', '3')]

>>> main(2660)
[('I1', '36'), ('I2', '9'), ('I3', '2')]

>>> main(2749)
[('I1', '61'), ('I2', '10'), ('I3', '2')]

Вариант №6

Задача №8

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

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

Десятичная строка.
0 4 5 6 13 14 V1 V2 V3 V4

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

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

Тесты:

>>> main('4020')
('20', '1', '62', '0')

>>> main('23718')
('6', '1', '114', '1')

>>> main('25093')
('5', '0', '136', '1')

>>> main('902')
('6', '0', '14', '0')

Вариант №7

Задача №8

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

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

Целое.

0 9 10 17 18 19 U1 U2 U3 20 25 26 29 30 39 U3 U5

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

Целое.

0 7 8 11 12 19 U3 U2 20 29 30 39 U1 U5

Тесты:

>>> main(1071059756210)
1070708002824

>>> main(469177209889)
468186058825

>>> main(17756036064)
18220998805

>>> main(1051052922730)
1051036700904

Вариант №8

Задача №8

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

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

Десятичная строка.
0 1 2 10 11 12 13 20 21 27 R2 R3 R4 R5

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

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

Тесты:

>>> main('40503253')
{'R2': '501', 'R3': '0', 'R4': '80', 'R5': '19'}

>>> main('173057044')
{'R2': '261', 'R3': '0', 'R4': '133', 'R5': '82'}

>>> main('140669465')
{'R2': '134', 'R3': '2', 'R4': '19', 'R5': '67'}

>>> main('69953472')
{'R2': '496', 'R3': '0', 'R4': '91', 'R5': '33'}

Вариант №9

Задача №8

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

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

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

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

Десятичная строка.
0 6 7 8 9 14 15 18 N1 N2 N3 N4

Тесты:

>>> main(('0x59', '0x3', '0x34', '0x4'))
'158169'

>>> main(('0x5b', '0x3', '0x25', '0xc'))
'412635'

>>> main(('0x29', '0x0', '0x18', '0x5'))
'176169'

>>> main(('0x38', '0x3', '0x1d', '0xd'))
'441272'

Вариант №10

Задача №8

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

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

Десятичная строка.
0 2 3 11 12 14 15 21 22 23 26 A1 A2 A3 A4 A5 A6

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

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

Тесты:

>>> main('61431475')
(3, 470, 5, 82, 0, 7)

>>> main('102960260')
(4, 400, 0, 70, 0, 12)

>>> main('79609308')
(4, 443, 3, 125, 0, 9)

>>> main('52752270')
(6, 497, 6, 73, 0, 6)

Вариант №11

Задача №8

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

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

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

0 5 6 14 15 18 19 22 23 25 D1 D3 D4 D5

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

Целое.

0 8 9 12 13 18 19 22 23 25 D3 D1 D4 D5

Тесты:

>>> main('36214140')
36667904

>>> main('33852003')
33845760

>>> main('46887665')
47066112

>>> main('62730879')
62911488

Вариант №12

Задача №8

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

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

Десятичная строка.
0 3 4 10 11 12 13 14 20 W1 W2 W3 W4

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

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

Тесты:

>>> main('11987')
('3', '109', '1', '1')

>>> main('9712')
('0', '95', '0', '1')

>>> main('15492')
('4', '72', '3', '1')

>>> main('9580')
('12', '86', '0', '1')

Вариант №13

Задача №8

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

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

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

0 3 4 10 11 13 14 15 21 22 28 N1 N2 N3 N4 N5 N6

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

Целое.

0 6 7 13 14 20 21 23 24 25 28 N6 N5 N2 N3 N4 N1

Тесты:

>>> main('347829956')
165362514

>>> main('349230993')
56512723

>>> main('46247486')
481870219

>>> main('357545953')
48205781

Вариант №14

Задача №8

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

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

Целое.
0 8 9 13 14 15 C1 C2 C3 C4 16 24 25 30 31 C4 C5 C6

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

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

Тесты:

>>> main(280276551)
{'C1': 71, 'C2': 23, 'C3': 0, 'C4': 361, 'C5': 8, 'C6': 0}

>>> main(89928352)
{'C1': 160, 'C2': 25, 'C3': 0, 'C4': 696, 'C5': 2, 'C6': 0}

>>> main(2284775090)
{'C1': 178, 'C2': 19, 'C3': 1, 'C4': 93, 'C5': 4, 'C6': 1}

>>> main(3758292882)
{'C1': 402, 'C2': 31, 'C3': 1, 'C4': 5, 'C5': 48, 'C6': 1}

Вариант №15

Задача №8

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

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

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

0 8 9 10 11 18 19 22 23 28 Z1 Z2 Z3 Z4 Z5

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

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

0 5 6 7 8 16 17 24 25 28 Z5 Z2 Z1 Z3 Z4

Тесты:

>>> main('0x12862d7e')
'25919141'

>>> main('0xe743ef')
'433188673'

>>> main('0x1dec94d1')
'455397819'

>>> main('0x1bf50251')
'490754423'

Вариант №16

Задача №8

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

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

Целое.

0 5 6 7 13 14 15 Y1 Y2 Y3 Y4

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

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

0 6 7 12 13 14 15 Y3 Y1 Y2 Y4

Тесты:

>>> main(7394)
'12601'

>>> main(44577)
'37084'

>>> main(14356)
'2672'

>>> main(51541)
'60050'

Вариант №17

Задача №8

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

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

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

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

Целое.
0 9 10 11 12 20 21 24 Q1 Q2 Q3 Q4 Q5

Тесты:

>>> main((921, 0, 1, 503, 12))
27229081

>>> main((492, 1, 1, 478, 0))
1961452

>>> main((332, 1, 1, 252, 10))
22007116

>>> main((622, 0, 0, 131, 5))
11022958

Вариант №18

Задача №8

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

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

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

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

Целое.
0 3 4 5 6 14 15 16 17 18 Z1 Z2 Z3 Z4 Z5

Тесты:

>>> main([('Z1', 7), ('Z2', 1), ('Z3', 417), ('Z4', 1), ('Z5', 1)])
190551

>>> main([('Z1', 0), ('Z2', 3), ('Z3', 74), ('Z4', 2), ('Z5', 1)])
201392

>>> main([('Z1', 12), ('Z2', 0), ('Z3', 470), ('Z4', 2), ('Z5', 2)])
357772

>>> main([('Z1', 2), ('Z2', 0), ('Z3', 34), ('Z4', 0), ('Z5', 1)])
133250

Вариант №19

Задача №8

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

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

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

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

Целое.
0 4 5 7 8 9 10 18 19 21 F1 F2 F3 F4 F5

Тесты:

>>> main([('F1', '0'), ('F2', '7'), ('F3', '0'), ('F4', '385'), ('F5', '3')])
1967328

>>> main([('F1', '7'), ('F2', '2'), ('F3', '1'), ('F4', '125'), ('F5', '2')])
1176903

>>> main([('F1', '18'), ('F2', '1'), ('F3', '1'), ('F4', '381'), ('F5', '5')])
3011890

>>> main([('F1', '5'), ('F2', '4'), ('F3', '3'), ('F4', '135'), ('F5', '3')])
1712005

Вариант №20

Задача №8

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

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

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

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

Десятичная строка.
0 8 9 10 19 20 22 Q1 Q3 Q4 23 28 29 38 39 45 Q4 Q5 Q6

Тесты:

>>> main({'Q1': '0x11e', 'Q3': '0x116', 'Q4': '0x12d', 'Q5': '0x15e', 'Q6': '0x23'})
'19429674211614'

>>> main({'Q1': '0xfa', 'Q3': '0xff', 'Q4': '0x7e', 'Q5': '0x2d8', 'Q6': '0x1c'})
'15784137194746'

>>> main({'Q1': '0x1cf', 'Q3': '0x259', 'Q4': '0x13d', 'Q5': '0x200', 'Q6': '0x26'})
'21165931849167'

>>> main({'Q1': '0x1c7', 'Q3': '0x105', 'Q4': '0x115', 'Q5': '0xc4', 'Q6': '0x2f'})
'25944040674759'

Вариант №21

Задача №8

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

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

Целое.

0 6 7 11 12 13 14 15 K1 K2 K3 K4 16 18 19 21 22 31 K4 K5 K6

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

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

0 6 7 15 K1 K6 16 17 21 22 23 24 26 27 31 K6 K4 K3 K5 K2

Тесты:

>>> main(2149222737)
'2467627089'

>>> main(3768036166)
'2998780230'

>>> main(306729526)
'557982902'

>>> main(23984442)
'2515403450'

Вариант №22

Задача №8

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

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

Шестнадцатиричная строка.
0 9 10 13 14 19 20 22 J1 J2 J3 J4

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

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

Тесты:

>>> main('0x1919e1')
[('J1', '0x1e1'), ('J2', '0x6'), ('J3', '0x24'), ('J4', '0x1')]

>>> main('0x6915fd')
[('J1', '0x1fd'), ('J2', '0x5'), ('J3', '0x24'), ('J4', '0x6')]

>>> main('0x2e5dc')
[('J1', '0x1dc'), ('J2', '0x9'), ('J3', '0xb'), ('J4', '0x0')]

>>> main('0x3fb650')
[('J1', '0x250'), ('J2', '0xd'), ('J3', '0x3e'), ('J4', '0x3')]

Вариант №23

Задача №8

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

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

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

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

Шестнадцатиричная строка.
0 2 3 8 9 14 15 22 23 29 W1 W2 W3 W4

Тесты:

>>> main([('W1', '0x7'), ('W2', '0x3c'), ('W3', '0x5'), ('W4', '0x8a')])
'0x450be7'

>>> main([('W1', '0x7'), ('W2', '0x31'), ('W3', '0x39'), ('W4', '0x16')])
'0xb738f'

>>> main([('W1', '0x0'), ('W2', '0x2a'), ('W3', '0xd'), ('W4', '0xf1')])
'0x789b50'

>>> main([('W1', '0x3'), ('W2', '0x15'), ('W3', '0xa'), ('W4', '0xfc')])
'0x7e14ab'

Вариант №24

Задача №8

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

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

Целое.
0 2 3 4 5 8 9 12 F1 F2 F3 F4

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

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

Тесты:

>>> main(4715)
[('F1', '0x3'), ('F2', '0x1'), ('F3', '0x3'), ('F4', '0x9')]

>>> main(3980)
[('F1', '0x4'), ('F2', '0x1'), ('F3', '0xc'), ('F4', '0x7')]

>>> main(1512)
[('F1', '0x0'), ('F2', '0x1'), ('F3', '0xf'), ('F4', '0x2')]

>>> main(7230)
[('F1', '0x6'), ('F2', '0x3'), ('F3', '0x1'), ('F4', '0xe')]

Вариант №25

Задача №8

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

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

Десятичная строка.
0 2 3 10 11 20 21 29 R1 R2 R3

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

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

Тесты:

>>> main('1444958')
[('R1', '0x6'), ('R2', '0x8b'), ('R3', '0x2c1')]

>>> main('2018896')
[('R1', '0x0'), ('R2', '0xca'), ('R3', '0x3d9')]

>>> main('1857969')
[('R1', '0x1'), ('R2', '0x36'), ('R3', '0x38b')]

>>> main('1290132')
[('R1', '0x4'), ('R2', '0xf2'), ('R3', '0x275')]

Вариант №26

Задача №8

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

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

Целое.
0 7 8 17 18 19 20 22 N1 N3 N4

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

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

Тесты:

>>> main(8377921)
{'N1': '65', 'N3': '3', 'N4': '7'}

>>> main(4124178)
{'N1': '18', 'N3': '3', 'N4': '3'}

>>> main(2012376)
{'N1': '216', 'N3': '3', 'N4': '1'}

>>> main(3423037)
{'N1': '61', 'N3': '1', 'N4': '3'}

Вариант №27

Задача №8

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

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

Целое.

0 3 4 7 8 11 12 16 17 19 C1 C2 C3 C4 C5

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

Целое.

0 3 4 8 9 11 12 15 16 19 C2 C4 C5 C1 C3

Тесты:

>>> main(702013)
449203

>>> main(621450)
764280

>>> main(238323)
144303

>>> main(561114)
1026189

Вариант №28

Задача №8

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

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

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

0 1 9 10 12 13 17 I1 I2 I3

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

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

0 2 3 11 12 16 17 I3 I2 I1

Тесты:

>>> main('1426')
'1609'

>>> main('610')
'2440'

>>> main('6890')
'2990'

>>> main('3741')
'133747'

Вариант №29

Задача №8

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

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

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

0 4 5 13 14 16 17 23 24 28 29 30 W1 W2 W4 W5 W6

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

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

0 4 5 7 8 14 15 23 24 25 26 30 W5 W4 W2 W6 W1

Тесты:

>>> main('1602532912')
'0x42d8c21f'

>>> main('1099431312')
'0x42f64301'

>>> main('2030712159')
'0x7fd50519'

>>> main('1865258100')
'0x5351960f'

Вариант №30

Задача №8

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

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

Целое.

0 9 10 16 17 22 23 30 I2 I3 I4

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

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

0 9 10 15 16 23 24 30 I3 I4 I2

Тесты:

>>> main(601349264)
'2001185792'

>>> main(532129180)
'1765764096'

>>> main(1256800056)
'1335218176'

>>> main(312269386)
'908408832'

Вариант №31

Задача №8

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

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

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

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

Шестнадцатиричная строка.
0 8 9 12 13 16 17 18 24 J1 J2 J4 J5

Тесты:

>>> main([('J1', 88), ('J2', 13), ('J4', 1), ('J5', 66)])
'0x10a1a58'

>>> main([('J1', 505), ('J2', 15), ('J4', 1), ('J5', 76)])
'0x1321ff9'

>>> main([('J1', 367), ('J2', 7), ('J4', 1), ('J5', 94)])
'0x17a0f6f'

>>> main([('J1', 127), ('J2', 4), ('J4', 1), ('J5', 60)])
'0xf2087f'

Вариант №32

Задача №8

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

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

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

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

Шестнадцатиричная строка.
0 9 10 15 16 20 N1 N2 21 22 31 32 35 36 40 N4 N5 N6

Тесты:

>>> main([('N1', '0x1f4'), ('N2', '0x31'), ('N4', '0x28a'), ('N5', '0x9'), ('N6', '0x17')])
'0x179a280c5f4'

>>> main([('N1', '0x115'), ('N2', '0x14'), ('N4', '0x27c'), ('N5', '0x8'), ('N6', '0x5')])
'0x589f005115'

>>> main([('N1', '0x1ed'), ('N2', '0x7'), ('N4', '0xa6'), ('N5', '0x5'), ('N6', '0x19')])
'0x19529801ded'

>>> main([('N1', '0x2ef'), ('N2', '0xb'), ('N4', '0x2a3'), ('N5', '0x3'), ('N6', '0xc')])
'0xc3a8c02eef'

Вариант №33

Задача №8

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

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

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

0 4 5 11 12 14 15 18 19 21 22 26 Z1 Z2 Z3 Z5 Z6

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

Целое.

0 3 4 10 11 15 16 18 19 23 24 26 Z2 Z6 Z5 Z1 Z3

Тесты:

>>> main('128124474')
13955856

>>> main('54509704')
71786560

>>> main('36188922')
64307568

>>> main('132304719')
75300768

Вариант №34

Задача №8

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

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

Десятичная строка.
0 5 6 7 11 12 17 I1 I2 I3 18 21 22 27 28 34 I5 I6

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

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

Тесты:

>>> main('28693333407')
{'I1': '31', 'I2': '0', 'I3': '11', 'I5': '57', 'I6': '106'}

>>> main('12822930269')
{'I1': '29', 'I2': '1', 'I3': '6', 'I5': '49', 'I6': '47'}

>>> main('25969347349')
{'I1': '21', 'I2': '0', 'I3': '22', 'I5': '47', 'I6': '96'}

>>> main('33526521600')
{'I1': '0', 'I2': '0', 'I3': '30', 'I5': '57', 'I6': '124'}

Вариант №35

Задача №8

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

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

Целое.
0 1 2 5 6 7 8 13 L1 L2 L3 L4

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

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

Тесты:

>>> main(12600)
[('L1', '0x0'), ('L2', '0xe'), ('L3', '0x0'), ('L4', '0x31')]

>>> main(16184)
[('L1', '0x0'), ('L2', '0xe'), ('L3', '0x0'), ('L4', '0x3f')]

>>> main(937)
[('L1', '0x1'), ('L2', '0xa'), ('L3', '0x2'), ('L4', '0x3')]

>>> main(1381)
[('L1', '0x1'), ('L2', '0x9'), ('L3', '0x1'), ('L4', '0x5')]

Вариант №36

Задача №8

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

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

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

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

Десятичная строка.
0 2 3 11 12 15 W1 W2 W3 16 17 22 23 31 W3 W4 W5

Тесты:

>>> main(('4', '263', '25', '22', '428'))
'3593312316'

>>> main(('4', '228', '19', '7', '129'))
'1083127588'

>>> main(('4', '164', '7', '48', '13'))
'115373348'

>>> main(('5', '360', '17', '39', '313'))
'2630818629'

Вариант №37

Задача №8

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

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

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

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

Шестнадцатиричная строка.
0 9 10 11 14 15 16 O1 O2 O3 O4 17 21 22 30 31 32 O4 O5 O6

Тесты:

>>> main(('0x354', '0x1', '0x6', '0x4c', '0x1a', '0x3'))
'0x186a63754'

>>> main(('0x1f6', '0x0', '0x3', '0x66', '0x190', '0x3'))
'0x1e43319f6'

>>> main(('0x37c', '0x0', '0x6', '0x26', '0x137', '0x3'))
'0x1cdd3337c'

>>> main(('0x3ea', '0x1', '0x7', '0x3a', '0x1df', '0x3'))
'0x1f7dd3fea'

Вариант №38

Задача №8

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

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

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

0 1 2 3 4 11 12 18 R1 R2 R3

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

Целое.

0 6 7 8 9 10 11 18 R2 R1 R3

Тесты:

>>> main('1807')
231296

>>> main('1771')
227072

>>> main('47')
6016

>>> main('281')
35584

Вариант №39

Задача №8

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

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

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

0 1 10 11 20 21 27 28 29 V2 V3 V4 V5

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

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

0 1 2 11 12 21 22 23 29 V5 V2 V3 V4

Тесты:

>>> main('0x22b7206e')
'179192030'

>>> main('0x12a2f096')
'176546093'

>>> main('0x173c9741')
'481898113'

>>> main('0x3cd88264')
'858850507'

Вариант №40

Задача №8

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

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

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

0 4 5 13 14 20 21 24 25 30 Q1 Q2 Q3 Q4 Q5

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

Целое.

0 5 6 10 11 14 15 21 22 30 Q5 Q1 Q4 Q3 Q2

Тесты:

>>> main('0x1e7ffadd')
1975492431

>>> main('0x29527b61')
1994707028

>>> main('0x5e6cc527')
173644271

>>> main('0x73eb8e9a')
488079033