ИВБО-21-23

Вариант №1

Задача №8

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

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

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

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

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

Тесты:

>>> main(('0x1c6', '0x0', '0x30', '0x0', '0x2', '0x0'))
'311750'

>>> main(('0x18c', '0x0', '0x0', '0x0', '0x1', '0x6'))
'3277196'

>>> main(('0xd1', '0x1', '0x19', '0x1', '0x0', '0x7'))
'3761873'

>>> main(('0x1b7', '0x0', '0xb', '0x1', '0x0', '0x4'))
'2174391'

Вариант №2

Задача №8

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

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

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

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

Целое.

Тесты:

>>> main([('Y1', 33), ('Y2', 177), ('Y3', 202), ('Y4', 7), ('Y5', 119), ('Y6', 462)])
3976601087073

>>> main([('Y1', 23), ('Y2', 178), ('Y3', 117), ('Y4', 0), ('Y5', 91), ('Y6', 435)])
3742732299415

>>> main([('Y1', 33), ('Y2', 182), ('Y3', 188), ('Y4', 3), ('Y5', 123), ('Y6', 348)])
2997582966177

>>> main([('Y1', 28), ('Y2', 493), ('Y3', 252), ('Y4', 4), ('Y5', 83), ('Y6', 544)])
4678536297308

Вариант №3

Задача №8

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

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

Целое.

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

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

Тесты:

>>> main(745746397)
(93, 15, 35, 5)

>>> main(3824551266)
(98, 10, 31, 28)

>>> main(13554807770)
(90, 7, 63, 100)

>>> main(4540586997)
(117, 7, 53, 33)

Вариант №4

Задача №8

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

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

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

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

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

Тесты:

>>> main('2820082')
{'T1': '0xf2', 'T2': '0x3', 'T3': '0x1', 'T4': '0x18', 'T5': '0xa'}

>>> main('1623968')
{'T1': '0xa0', 'T2': '0x3', 'T3': '0x1', 'T4': '0x6', 'T5': '0x6'}

>>> main('637238')
{'T1': '0x36', 'T2': '0x1', 'T3': '0x6', 'T4': '0xd', 'T5': '0x2'}

>>> main('2746463')
{'T1': '0x5f', 'T2': '0x0', 'T3': '0x2', 'T4': '0xf', 'T5': '0xa'}

Вариант №5

Задача №8

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

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

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

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

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

Тесты:

>>> main('0x3aa126e5f')
[('E1', '0x1f'), ('E2', '0x1'), ('E3', '0x1c'), ('E4', '0x93'), ('E5', '0x2a8'), ('E6', '0x3')]

>>> main('0x881778c')
[('E1', '0xc'), ('E2', '0x0'), ('E3', '0x2f'), ('E4', '0xb'), ('E5', '0x22'), ('E6', '0x0')]

>>> main('0x21248d33c')
[('E1', '0x3c'), ('E2', '0x0'), ('E3', '0x26'), ('E4', '0x46'), ('E5', '0x49'), ('E6', '0x2')]

>>> main('0x1d04272a8')
[('E1', '0x28'), ('E2', '0x0'), ('E3', '0x25'), ('E4', '0x13'), ('E5', '0x341'), ('E6', '0x1')]

Вариант №6

Задача №8

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

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

Целое.

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

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

Тесты:

>>> main(4121870224374)
{'V1': 502, 'V2': 37, 'V3': 334, 'V5': 479, 'V6': 0}

>>> main(4987237125437)
{'V1': 317, 'V2': 166, 'V3': 319, 'V5': 68, 'V6': 1}

>>> main(8183121141588)
{'V1': 340, 'V2': 175, 'V3': 3, 'V5': 440, 'V6': 1}

>>> main(7950433236000)
{'V1': 32, 'V2': 218, 'V3': 351, 'V5': 413, 'V6': 1}

Вариант №7

Задача №8

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

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

Целое.

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

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

Тесты:

>>> main(3661077)
'1535631'

>>> main(2169887)
'4066828'

>>> main(2784220)
'2014689'

>>> main(2644267)
'2788505'

Вариант №8

Задача №8

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

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

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

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

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

Тесты:

>>> main(('0x6', '0x29', '0xd', '0x3', '0x40'))
'0x103d296'

>>> main(('0x6', '0x63', '0x2', '0x0', '0xe'))
'0x382636'

>>> main(('0xa', '0xd', '0x4', '0x3', '0x5c'))
'0x17340da'

>>> main(('0x9', '0x59', '0xa', '0x2', '0x4a'))
'0x12aa599'

Вариант №9

Задача №8

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

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

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

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

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

Тесты:

>>> main('0x3eec347')
'0x3bec347'

>>> main('0x3e0b2f5')
'0x398b2f5'

>>> main('0x2b67b09')
'0x2d67b09'

>>> main('0x2e0ccf4')
'0x390ccf4'

Вариант №10

Задача №8

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

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

Целое.

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

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

Тесты:

>>> main(1738669368)
[('Y1', 312), ('Y3', 3), ('Y4', 244), ('Y5', 12)]

>>> main(159355371)
[('Y1', 491), ('Y3', 15), ('Y4', 47), ('Y5', 1)]

>>> main(229216197)
[('Y1', 965), ('Y3', 3), ('Y4', 181), ('Y5', 1)]

>>> main(1961145873)
[('Y1', 529), ('Y3', 9), ('Y4', 156), ('Y5', 14)]

Вариант №11

Задача №8

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

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

Целое.

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

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

Тесты:

>>> main(261209152)
'148844992'

>>> main(227926315)
'183698859'

>>> main(143815501)
'154733901'

>>> main(265396338)
'148341234'

Вариант №12

Задача №8

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

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

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

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

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

Тесты:

>>> main({'C2': '132', 'C3': '62', 'C4': '27'})
'908018176'

>>> main({'C2': '6', 'C3': '34', 'C4': '37'})
'1242628864'

>>> main({'C2': '32', 'C3': '953', 'C4': '78'})
'2648477696'

>>> main({'C2': '197', 'C3': '485', 'C4': '90'})
'3035816576'

Вариант №13

Задача №8

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

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

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

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

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

Тесты:

>>> main('283336498')
'23563997490'

>>> main('123919318009')
'12596663801'

>>> main('70393788920')
'33942341112'

>>> main('86096732794')
'32352715130'

Вариант №14

Задача №8

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

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

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

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

Целое.

Тесты:

>>> main('93739432822')
97419245267

>>> main('70498326998')
96694541441

>>> main('123644772974')
63994078835

>>> main('76293069726')
131235428570

Вариант №15

Задача №8

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

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

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

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

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

Тесты:

>>> main('115607')
'0x65f0c00'

>>> main('820186')
'0x336a0c00'

>>> main('1468733')
'0x58f5a400'

>>> main('16115282')
'0x3d54b9800'

Вариант №16

Задача №8

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

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

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

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

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

Тесты:

>>> main({'B1': '0x7', 'B2': '0x8', 'B3': '0x65', 'B4': '0x3', 'B5': '0x3c'})
'127453831'

>>> main({'B1': '0xb', 'B2': '0xe', 'B3': '0x3ff', 'B4': '0x1', 'B5': '0x10'})
'34602731'

>>> main({'B1': '0x2', 'B2': '0x19', 'B3': '0x15b', 'B4': '0x1', 'B5': '0x14'})
'42645394'

>>> main({'B1': '0xa', 'B2': '0x15', 'B3': '0x1b2', 'B4': '0x0', 'B5': '0x32'})
'105080154'

Вариант №17

Задача №8

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

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

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

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

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

Тесты:

>>> main('836154921')
{'V1': '41', 'V2': '54', 'V3': '2', 'V4': '214', 'V5': '49'}

>>> main('1017087116')
{'V1': '140', 'V2': '4', 'V3': '2', 'V4': '159', 'V5': '60'}

>>> main('97966557')
{'V1': '221', 'V2': '25', 'V3': '3', 'V4': '214', 'V5': '5'}

>>> main('387220043')
{'V1': '75', 'V2': '2', 'V3': '2', 'V4': '20', 'V5': '23'}

Вариант №18

Задача №8

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

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

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

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

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

Тесты:

>>> main('0x21368')
[('U2', '27'), ('U3', '2'), ('U4', '1'), ('U5', '0')]

>>> main('0x116df0')
[('U2', '47'), ('U3', '45'), ('U4', '0'), ('U5', '4')]

>>> main('0x1bac41')
[('U2', '34'), ('U3', '53'), ('U4', '1'), ('U5', '6')]

>>> main('0x4eb53')
[('U2', '26'), ('U3', '29'), ('U4', '0'), ('U5', '1')]

Вариант №19

Задача №8

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

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

Целое.

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

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

Тесты:

>>> main(983140)
[('C1', 4), ('C3', 0), ('C4', 15)]

>>> main(1663953)
[('C1', 17), ('C3', 1), ('C4', 25)]

>>> main(95349)
[('C1', 21), ('C3', 1), ('C4', 1)]

>>> main(5523)
[('C1', 19), ('C3', 0), ('C4', 0)]

Вариант №20

Задача №8

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

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

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

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

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

Тесты:

>>> main('0x63713b')
'1287035'

>>> main('0x17dee')
'14598513'

>>> main('0x24f453')
'4531449'

>>> main('0xb10b26')
'11694341'

Вариант №21

Задача №8

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

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

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

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

Целое.

Тесты:

>>> main('2834532514')
10487094440

>>> main('11755523295')
8080062140

>>> main('14197583177')
16066881358

>>> main('8421767923')
13948059125

Вариант №22

Задача №8

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

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

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

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

Целое.

Тесты:

>>> main('0x14a7ec444')
1386184913

>>> main('0x71f9cd647')
24828641497

>>> main('0x752e4cb12')
16453796044

>>> main('0x17628a3ee')
1569325231

Вариант №23

Задача №8

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

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

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

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

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

Тесты:

>>> main('0x206e8')
{'T1': '0x8', 'T2': '0x0', 'T3': '0x37', 'T4': '0x8'}

>>> main('0x2662c')
{'T1': '0xc', 'T2': '0x0', 'T3': '0x131', 'T4': '0x9'}

>>> main('0x36e5a')
{'T1': '0xa', 'T2': '0x1', 'T3': '0x172', 'T4': '0xd'}

>>> main('0x1e9a4')
{'T1': '0x4', 'T2': '0x0', 'T3': '0x14d', 'T4': '0x7'}

Вариант №24

Задача №8

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

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

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

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

Целое.

Тесты:

>>> main('0x1d68a4a23')
7526982324

>>> main('0x5c6398db')
1077513699

>>> main('0x3dc5933ab')
16132553442

>>> main('0x1e69652af')
8076470836

Вариант №25

Задача №8

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

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

Целое.

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

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

Тесты:

>>> main(154118301)
{'U1': '29', 'U2': '2', 'U3': '0', 'U4': '501', 'U5': '9', 'U6': '4'}

>>> main(48134096)
{'U1': '16', 'U2': '7', 'U3': '3', 'U4': '974', 'U5': '6', 'U6': '1'}

>>> main(55976544)
{'U1': '32', 'U2': '1', 'U3': '1', 'U4': '708', 'U5': '10', 'U6': '1'}

>>> main(98256553)
{'U1': '41', 'U2': '2', 'U3': '3', 'U4': '872', 'U5': '14', 'U6': '2'}

Вариант №26

Задача №8

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

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

Целое.

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

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

Тесты:

>>> main(1199897680)
('0x0', '0xfc', '0x21', '0x47')

>>> main(1292391361)
('0x1', '0x53', '0x2', '0x4d')

>>> main(202481362)
('0x1', '0x19e', '0x4', '0xc')

>>> main(1101275838)
('0x1', '0x22', '0x29', '0x41')

Вариант №27

Задача №8

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

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

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

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

Целое.

Тесты:

>>> main({'P1': 109, 'P2': 11, 'P3': 45, 'P4': 3, 'P5': 126, 'P6': 813})
218503933421

>>> main({'P1': 1, 'P2': 0, 'P3': 176, 'P4': 0, 'P5': 82, 'P6': 621})
166870745089

>>> main({'P1': 63, 'P2': 10, 'P3': 107, 'P4': 3, 'P5': 13, 'P6': 214})
57474243903

>>> main({'P1': 82, 'P2': 15, 'P3': 130, 'P4': 1, 'P5': 100, 'P6': 845})
227038468050

Вариант №28

Задача №8

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

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

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

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

Целое.

Тесты:

>>> main([('Z1', '0x2f0'), ('Z2', '0x0'), ('Z3', '0x11'), ('Z4', '0x18')])
6361840

>>> main([('Z1', '0x379'), ('Z2', '0x1'), ('Z3', '0x2'), ('Z4', '0xe')])
3680121

>>> main([('Z1', '0x3b0'), ('Z2', '0x1'), ('Z3', '0x1e'), ('Z4', '0x11')])
4581296

>>> main([('Z1', '0x332'), ('Z2', '0x0'), ('Z3', '0x27'), ('Z4', '0x1e')])
8024882

Вариант №29

Задача №8

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

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

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

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

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

Тесты:

>>> main({'E1': 46, 'E2': 1, 'E3': 118, 'E4': 1, 'E6': 30})
'0x3c7b6e'

>>> main({'E1': 14, 'E2': 0, 'E3': 60, 'E4': 0, 'E6': 39})
'0x4e1e0e'

>>> main({'E1': 33, 'E2': 1, 'E3': 59, 'E4': 0, 'E6': 39})
'0x4e1de1'

>>> main({'E1': 56, 'E2': 0, 'E3': 82, 'E4': 1, 'E6': 39})
'0x4e6938'

Вариант №30

Задача №8

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

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

Целое.

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

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

Тесты:

>>> main(1668238067)
'1668215762'

>>> main(1306937397)
'1306801554'

>>> main(1773804142)
'1773825670'

>>> main(1159694797)
'1159581154'

Вариант №31

Задача №8

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

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

Целое.

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

Целое.

Тесты:

>>> main(17350)
574338

>>> main(2363)
485632

>>> main(3585)
11776

>>> main(14362)
219137

Вариант №32

Задача №8

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

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

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

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

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

Тесты:

>>> main('801965186094')
'0xbae1738d99'

>>> main('591437752428')
'0x89c36346fe'

>>> main('11850862588')
'0x2ffe425dc'

>>> main('652907121195')
'0x98515844c0'

Вариант №33

Задача №8

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

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

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

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

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

Тесты:

>>> main('0x710eb8')
('0xb8', '0x7', '0x1')

>>> main('0x1926cd7')
('0xd7', '0x6', '0x6')

>>> main('0x114e223')
('0x23', '0x1', '0x4')

>>> main('0xeb2953')
('0x153', '0x4', '0x3')

Вариант №34

Задача №8

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

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

Целое.

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

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

Тесты:

>>> main(715365774)
{'Q1': '14', 'Q3': '115', 'Q4': '4', 'Q5': '85'}

>>> main(964351715)
{'Q1': '35', 'Q3': '90', 'Q4': '15', 'Q5': '114'}

>>> main(669073043)
{'Q1': '19', 'Q3': '39', 'Q4': '12', 'Q5': '79'}

>>> main(1451518382)
{'Q1': '46', 'Q3': '141', 'Q4': '0', 'Q5': '173'}

Вариант №35

Задача №8

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

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

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

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

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

Тесты:

>>> main([('S1', '0x1'), ('S2', '0x15'), ('S3', '0x3'), ('S4', '0x3'), ('S5', '0x37'), ('S6', '0x37b')])
'0xdef7f55'

>>> main([('S1', '0x0'), ('S2', '0x23'), ('S3', '0x0'), ('S4', '0x0'), ('S5', '0x3'), ('S6', '0x2a5')])
'0xa94308c'

>>> main([('S1', '0x3'), ('S2', '0x26'), ('S3', '0x1'), ('S4', '0x1'), ('S5', '0xa'), ('S6', '0x14b')])
'0x52ca59b'

>>> main([('S1', '0x3'), ('S2', '0x23'), ('S3', '0x0'), ('S4', '0x2'), ('S5', '0x14'), ('S6', '0x8a')])
'0x229488f'

Вариант №36

Задача №8

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

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

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

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

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

Тесты:

>>> main('243969')
(1, 0, 114, 7)

>>> main('46518')
(0, 27, 107, 1)

>>> main('14115')
(1, 17, 110, 0)

>>> main('133633')
(1, 0, 20, 4)

Вариант №37

Задача №8

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

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

Целое.

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

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

Тесты:

>>> main(188122982)
'321650741'

>>> main(421221869)
'384040989'

>>> main(361290171)
'500563994'

>>> main(369744931)
'299368451'

Вариант №38

Задача №8

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

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

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

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

Целое.

Тесты:

>>> main('0x18e901295')
4988279808

>>> main('0x2eadeb4f2')
14212781056

>>> main('0x39942c6ff')
19058339840

>>> main('0x6b9e5236b')
9508319232

Вариант №39

Задача №8

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

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

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

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

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

Тесты:

>>> main('5911906')
'4510125'

>>> main('6281633')
'4390582'

>>> main('2554705')
'2308074'

>>> main('397682')
'2371756'

Вариант №40

Задача №8

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

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

Целое.

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

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

Тесты:

>>> main(766630)
('0xa6', '0x2', '0x16', '0xb')

>>> main(113841)
('0xb1', '0x4', '0x17', '0x1')

>>> main(157013)
('0x55', '0x5', '0xc', '0x2')

>>> main(489654)
('0xb6', '0x0', '0xf', '0x7')