ИНБО-12-23

Вариант №1

Задача №8

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

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

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

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

Целое.

Тесты:

>>> main(('54', '7', '716', '12', '0'))
6818098176

>>> main(('7', '10', '45', '25', '1'))
30625566208

>>> main(('44', '4', '185', '16', '5'))
94586427392

>>> main(('7', '6', '852', '13', '5'))
93325561344

Вариант №2

Задача №8

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

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

Целое.

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

Целое.

Тесты:

>>> main(3929846)
6215659

>>> main(6946803)
8287230

>>> main(4091129)
2047195

>>> main(1959339)
3505097

Вариант №3

Задача №8

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

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

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

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

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

Тесты:

>>> main({'L1': '0x0', 'L2': '0x0', 'L3': '0xf', 'L4': '0x68'})
'0x343c0'

>>> main({'L1': '0x0', 'L2': '0x15', 'L3': '0x2', 'L4': '0x28'})
'0x140aa'

>>> main({'L1': '0x1', 'L2': '0x1', 'L3': '0x6', 'L4': '0xf'})
'0x7983'

>>> main({'L1': '0x0', 'L2': '0x8', 'L3': '0x1c', 'L4': '0x15'})
'0xaf10'

Вариант №4

Задача №8

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

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

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

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

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

Тесты:

>>> main('0x3a91be6b')
[('B1', '0xb'), ('B2', '0x3e6'), ('B3', '0x46'), ('B4', '0x2a'), ('B5', '0x3')]

>>> main('0xb086f86')
[('B1', '0x6'), ('B2', '0x2f8'), ('B3', '0x21'), ('B4', '0x2c'), ('B5', '0x0')]

>>> main('0x336658dc')
[('B1', '0xc'), ('B2', '0x18d'), ('B3', '0x99'), ('B4', '0xd'), ('B5', '0x3')]

>>> main('0x21665904')
[('B1', '0x4'), ('B2', '0x190'), ('B3', '0x99'), ('B4', '0x5'), ('B5', '0x2')]

Вариант №5

Задача №8

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

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

Целое.

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

Целое.

Тесты:

>>> main(823)
1491

>>> main(94)
901

>>> main(591)
1988

>>> main(1685)
1385

Вариант №6

Задача №8

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

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

Целое.

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

Целое.

Тесты:

>>> main(16440059633)
10665912704

>>> main(16289014958)
10623964416

>>> main(12240429612)
10109502592

>>> main(13992218229)
3917482240

Вариант №7

Задача №8

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

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

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

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

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

Тесты:

>>> main({'T1': '91', 'T2': '93', 'T3': '6', 'T4': '2'})
'0x9aedb'

>>> main({'T1': '112', 'T2': '124', 'T3': '11', 'T4': '3'})
'0xefe70'

>>> main({'T1': '71', 'T2': '116', 'T3': '13', 'T4': '1'})
'0x77a47'

>>> main({'T1': '106', 'T2': '116', 'T3': '10', 'T4': '3'})
'0xeba6a'

Вариант №8

Задача №8

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

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

Целое.

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

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

Тесты:

>>> main(23445)
{'Q1': '0x195', 'Q2': '0xd', 'Q3': '0x1', 'Q4': '0x0'}

>>> main(111784)
{'Q1': '0xa8', 'Q2': '0x1a', 'Q3': '0x0', 'Q4': '0x3'}

>>> main(39584)
{'Q1': '0xa0', 'Q2': '0xd', 'Q3': '0x0', 'Q4': '0x1'}

>>> main(65792)
{'Q1': '0x100', 'Q2': '0x0', 'Q3': '0x0', 'Q4': '0x2'}

Вариант №9

Задача №8

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

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

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

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

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

Тесты:

>>> main(('0xc', '0x75', '0x12', '0x32', '0x0'))
'839157596'

>>> main(('0xe', '0x26', '0x295', '0x33', '0x0'))
'866468462'

>>> main(('0xd', '0x4d', '0x3cd', '0x4f', '0x0'))
'1341342941'

>>> main(('0x4', '0x25', '0xbc', '0x3f', '0x1'))
'3207529044'

Вариант №10

Задача №8

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

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

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

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

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

Тесты:

>>> main({'Z1': 25, 'Z2': 1, 'Z3': 2, 'Z4': 341, 'Z5': 9, 'Z6': 62})
'0xfa6aab9'

>>> main({'Z1': 1, 'Z2': 1, 'Z3': 3, 'Z4': 286, 'Z5': 7, 'Z6': 61})
'0xf5e3ce1'

>>> main({'Z1': 15, 'Z2': 0, 'Z3': 1, 'Z4': 500, 'Z5': 7, 'Z6': 14})
'0x39fe84f'

>>> main({'Z1': 20, 'Z2': 1, 'Z3': 5, 'Z4': 414, 'Z5': 12, 'Z6': 41})
'0xa733d74'

Вариант №11

Задача №8

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

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

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

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

Целое.

Тесты:

>>> main(('9', '73', '384', '0', '236', '45'))
781013746841

>>> main(('2', '107', '506', '15', '55', '106'))
1822928393906

>>> main(('11', '37', '132', '27', '402', '104'))
1800223859291

>>> main(('5', '41', '508', '16', '44', '63'))
1083825971861

Вариант №12

Задача №8

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

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

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

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

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

Тесты:

>>> main('14821897251606')
{'S1': '790', 'S2': '746', 'S3': '222', 'S4': '431', 'S5': '3', 'S6': '13'}

>>> main('13552833638244')
{'S1': '868', 'S2': '363', 'S3': '61', 'S4': '312', 'S5': '2', 'S6': '12'}

>>> main('12818987595962')
{'S1': '186', 'S2': '238', 'S3': '115', 'S4': '138', 'S5': '5', 'S6': '11'}

>>> main('13826326295662')
{'S1': '110', 'S2': '285', 'S3': '20', 'S4': '307', 'S5': '4', 'S6': '12'}

Вариант №13

Задача №8

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

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

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

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

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

Тесты:

>>> main('0x6db43')
'0xee869'

>>> main('0x19f0ae')
'0x19d5c6'

>>> main('0x1fb873')
'0xf8ee7'

>>> main('0x1af407')
'0x1ec0d6'

Вариант №14

Задача №8

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

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

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

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

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

Тесты:

>>> main({'F1': '6', 'F2': '1', 'F3': '7', 'F4': '24', 'F5': '175', 'F6': '0'})
'2879726'

>>> main({'F1': '7', 'F2': '0', 'F3': '12', 'F4': '21', 'F5': '197', 'F6': '2'})
'11627399'

>>> main({'F1': '6', 'F2': '3', 'F3': '1', 'F4': '2', 'F5': '119', 'F6': '1'})
'6145086'

>>> main({'F1': '7', 'F2': '2', 'F3': '4', 'F4': '1', 'F5': '146', 'F6': '0'})
'2392727'

Вариант №15

Задача №8

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

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

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

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

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

Тесты:

>>> main('1675379')
[('Z1', '0x73'), ('Z2', '0x0'), ('Z3', '0x8'), ('Z4', '0xcc')]

>>> main('1720882')
[('Z1', '0x32'), ('Z2', '0x0'), ('Z3', '0x1'), ('Z4', '0xd2')]

>>> main('1541222')
[('Z1', '0x66'), ('Z2', '0x0'), ('Z3', '0x2'), ('Z4', '0xbc')]

>>> main('1697933')
[('Z1', '0x8d'), ('Z2', '0x0'), ('Z3', '0x4'), ('Z4', '0xcf')]

Вариант №16

Задача №8

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

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

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

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

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

Тесты:

>>> main('0x5252f062e')
'22018001502'

>>> main('0x7640c86b5')
'31681677337'

>>> main('0x5914d9f63')
'23923262107'

>>> main('0x325f60881')
'13430164460'

Вариант №17

Задача №8

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

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

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

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

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

Тесты:

>>> main([('Y1', '313'), ('Y2', '0'), ('Y3', '1'), ('Y4', '271')])
'2224441'

>>> main([('Y1', '182'), ('Y2', '3'), ('Y3', '1'), ('Y4', '378')])
'3102390'

>>> main([('Y1', '17'), ('Y2', '0'), ('Y3', '0'), ('Y4', '452')])
'3702801'

>>> main([('Y1', '282'), ('Y2', '4'), ('Y3', '1'), ('Y4', '421')])
'3455258'

Вариант №18

Задача №8

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

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

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

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

Целое.

Тесты:

>>> main('0x3c8ae4de')
467943794

>>> main('0x2b732fbb')
928743831

>>> main('0xd38ed9a')
845791350

>>> main('0x3ec32a1e')
66453909

Вариант №19

Задача №8

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

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

Целое.

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

Целое.

Тесты:

>>> main(2153634)
12861861

>>> main(15903314)
6677842

>>> main(5074150)
5020391

>>> main(15381191)
9426262

Вариант №20

Задача №8

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

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

Целое.

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

Целое.

Тесты:

>>> main(65009391)
56588280

>>> main(29933425)
63551672

>>> main(43693150)
56242000

>>> main(25025487)
29222824

Вариант №21

Задача №8

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

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

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

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

Целое.

Тесты:

>>> main([('R1', 0), ('R2', 66), ('R3', 1), ('R4', 119), ('R5', 2), ('R6', 129)])
271301384

>>> main([('R1', 3), ('R2', 112), ('R3', 0), ('R4', 11), ('R5', 0), ('R6', 137)])
287332803

>>> main([('R1', 0), ('R2', 65), ('R3', 0), ('R4', 122), ('R5', 1), ('R6', 146)])
306696452

>>> main([('R1', 0), ('R2', 5), ('R3', 2), ('R4', 76), ('R5', 3), ('R6', 181)])
380527636

Вариант №22

Задача №8

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

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

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

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

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

Тесты:

>>> main('0x4e4911d')
{'I2': 0, 'I3': 73, 'I4': 78}

>>> main('0x384de0')
{'I2': 3, 'I3': 132, 'I4': 3}

>>> main('0x4566bea')
{'I2': 2, 'I3': 102, 'I4': 69}

>>> main('0x7b26333')
{'I2': 0, 'I3': 38, 'I4': 123}

Вариант №23

Задача №8

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

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

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

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

Целое.

Тесты:

>>> main([('Q1', '29'), ('Q2', '0'), ('Q3', '174'), ('Q4', '0'), ('Q5', '1'), ('Q6', '2')])
4763165

>>> main([('Q1', '23'), ('Q2', '0'), ('Q3', '333'), ('Q4', '3'), ('Q5', '3'), ('Q6', '1')])
4148503

>>> main([('Q1', '39'), ('Q2', '3'), ('Q3', '45'), ('Q4', '1'), ('Q5', '3'), ('Q6', '0')])
1715687

>>> main([('Q1', '7'), ('Q2', '2'), ('Q3', '62'), ('Q4', '1'), ('Q5', '2'), ('Q6', '2')])
5389959

Вариант №24

Задача №8

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

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

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

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

Целое.

Тесты:

>>> main(('522', '5', '0', '74', '33', '3'))
7005804042

>>> main(('425', '12', '3', '1', '6', '0'))
100905385

>>> main(('304', '31', '0', '28', '48', '2'))
5103975728

>>> main(('176', '28', '0', '5', '125', '2'))
6392803504

Вариант №25

Задача №8

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

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

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

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

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

Тесты:

>>> main('800410983413')
{'O1': '117', 'O2': '55', 'O3': '2', 'O5': '737', 'O6': '372'}

>>> main('695353011631')
{'O1': '47', 'O2': '27', 'O3': '7', 'O5': '818', 'O6': '323'}

>>> main('158809462357')
{'O1': '85', 'O2': '44', 'O3': '0', 'O5': '974', 'O6': '73'}

>>> main('483933244932')
{'O1': '4', 'O2': '28', 'O3': '10', 'O5': '357', 'O6': '225'}

Вариант №26

Задача №8

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

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

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

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

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

Тесты:

>>> main([('R1', 52), ('R2', 17), ('R4', 1), ('R5', 177), ('R6', 11)])
'190366836'

>>> main([('R1', 2), ('R2', 19), ('R4', 1), ('R5', 67), ('R6', 2)])
'35767490'

>>> main([('R1', 44), ('R2', 13), ('R4', 0), ('R5', 125), ('R6', 4)])
'71205740'

>>> main([('R1', 3), ('R2', 15), ('R4', 1), ('R5', 87), ('R6', 7)])
'120308675'

Вариант №27

Задача №8

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

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

Целое.

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

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

Тесты:

>>> main(53512)
[('K1', '0'), ('K2', '4'), ('K3', '2'), ('K4', '52')]

>>> main(8981)
[('K1', '1'), ('K2', '10'), ('K3', '6'), ('K4', '8')]

>>> main(51151)
[('K1', '1'), ('K2', '39'), ('K3', '7'), ('K4', '49')]

>>> main(38442)
[('K1', '0'), ('K2', '21'), ('K3', '4'), ('K4', '37')]

Вариант №28

Задача №8

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

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

Целое.

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

Целое.

Тесты:

>>> main(4643093)
6563163

>>> main(8125242)
15515311

>>> main(4060252)
13705015

>>> main(6063072)
1026098

Вариант №29

Задача №8

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

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

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

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

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

Тесты:

>>> main('20730238257')
[('H2', '0x12a'), ('H3', '0xe7'), ('H4', '0x4d')]

>>> main('41412131856')
[('H2', '0x17e'), ('H3', '0x116'), ('H4', '0x9a')]

>>> main('2197724553')
[('H2', '0x14e'), ('H3', '0xbf'), ('H4', '0x8')]

>>> main('60164286035')
[('H2', '0x113'), ('H3', '0x84'), ('H4', '0xe0')]

Вариант №30

Задача №8

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

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

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

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

Целое.

Тесты:

>>> main([('S1', '0x0'), ('S2', '0x1'), ('S3', '0x6'), ('S4', '0x3c')])
983248

>>> main([('S1', '0x8'), ('S2', '0x0'), ('S3', '0x82'), ('S4', '0x7a')])
2003016

>>> main([('S1', '0xc'), ('S2', '0x0'), ('S3', '0xed'), ('S4', '0x51')])
1334700

>>> main([('S1', '0x9'), ('S2', '0x0'), ('S3', '0xf2'), ('S4', '0x58')])
1449545

Вариант №31

Задача №8

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

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

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

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

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

Тесты:

>>> main('2799900')
[('Z2', 8), ('Z3', 23), ('Z4', 42)]

>>> main('1596595')
[('Z2', 37), ('Z3', 11), ('Z4', 24)]

>>> main('1957483')
[('Z2', 51), ('Z3', 27), ('Z4', 29)]

>>> main('149250')
[('Z2', 56), ('Z3', 8), ('Z4', 2)]

Вариант №32

Задача №8

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

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

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

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

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

Тесты:

>>> main('0xc9070a7d')
[('H1', '5'), ('H2', '7'), ('H3', '41'), ('H4', '0'), ('H5', '263'), ('H6', '50')]

>>> main('0x1dc1d42ff')
[('H1', '7'), ('H2', '7'), ('H3', '11'), ('H4', '4'), ('H5', '29'), ('H6', '119')]

>>> main('0x81f40bab')
[('H1', '3'), ('H2', '5'), ('H3', '46'), ('H4', '0'), ('H5', '500'), ('H6', '32')]

>>> main('0x3b570630c')
[('H1', '4'), ('H2', '1'), ('H3', '12'), ('H4', '6'), ('H5', '368'), ('H6', '237')]

Вариант №33

Задача №8

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

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

Целое.

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

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

Тесты:

>>> main(9450600348)
{'E1': 28, 'E2': 30, 'E3': 6, 'E4': 306, 'E5': 563}

>>> main(634630747)
{'E1': 27, 'E2': 9, 'E3': 6, 'E4': 846, 'E5': 37}

>>> main(14919316955)
{'E1': 27, 'E2': 23, 'E3': 6, 'E4': 266, 'E5': 889}

>>> main(10684459786)
{'E1': 10, 'E2': 12, 'E3': 5, 'E4': 863, 'E5': 636}

Вариант №34

Задача №8

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

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

Целое.

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

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

Тесты:

>>> main(674591479545)
{'K2': '367', 'K3': '72', 'K4': '134', 'K5': '0', 'K6': '628'}

>>> main(43361958950)
{'K2': '450', 'K3': '151', 'K4': '196', 'K5': '0', 'K6': '40'}

>>> main(1025257346227)
{'K2': '331', 'K3': '204', 'K4': '176', 'K5': '1', 'K6': '954'}

>>> main(264008499145)
{'K2': '508', 'K3': '15', 'K4': '193', 'K5': '1', 'K6': '245'}

Вариант №35

Задача №8

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

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

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

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

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

Тесты:

>>> main((97, 3, 6, 207, 90))
'386601370465'

>>> main((92, 24, 28, 247, 12))
'51604592732'

>>> main((244, 7, 29, 22, 4))
'17185875956'

>>> main((91, 17, 29, 173, 115))
'493966831963'

Вариант №36

Задача №8

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

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

Целое.

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

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

Тесты:

>>> main(835131)
('571', '15', '1', '0')

>>> main(12725393)
('145', '11', '0', '3')

>>> main(10580279)
('311', '28', '0', '2')

>>> main(9679298)
('450', '12', '1', '2')

Вариант №37

Задача №8

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

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

Целое.

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

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

Тесты:

>>> main(491802)
'0x400f0'

>>> main(1034625)
'0x601f9'

>>> main(844922)
'0x10019c'

>>> main(1643446)
'0xe0322'

Вариант №38

Задача №8

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

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

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

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

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

Тесты:

>>> main([('F1', 46), ('F2', 1), ('F3', 59), ('F4', 798)])
'418442414'

>>> main([('F1', 90), ('F2', 2), ('F3', 483), ('F4', 118)])
'62360922'

>>> main([('F1', 52), ('F2', 7), ('F3', 448), ('F4', 308)])
'161940404'

>>> main([('F1', 7), ('F2', 3), ('F3', 473), ('F4', 596)])
'312960391'

Вариант №39

Задача №8

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

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

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

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

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

Тесты:

>>> main('53669103')
'0x11b3ccaf'

>>> main('26382702')
'0x45e4ae'

>>> main('19473426')
'0x904a52'

>>> main('1203041')
'0x16d8481'

Вариант №40

Задача №8

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

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

Целое.

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

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

Тесты:

>>> main(4546)
[('G2', 0), ('G3', 14), ('G4', 8)]

>>> main(2785)
[('G2', 0), ('G3', 7), ('G4', 5)]

>>> main(3769)
[('G2', 3), ('G3', 5), ('G4', 7)]

>>> main(4928)
[('G2', 0), ('G3', 10), ('G4', 9)]