Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Целое.Тесты:
>>> main([('S1', '365'), ('S2', '1'), ('S3', '10'), ('S4', '10'), ('S5', '24')])
50680685
>>> main([('S1', '426'), ('S2', '3'), ('S3', '10'), ('S4', '46'), ('S5', '22')])
47667114
>>> main([('S1', '212'), ('S2', '1'), ('S3', '6'), ('S4', '5'), ('S5', '31')])
65188564
>>> main([('S1', '162'), ('S2', '3'), ('S3', '9'), ('S4', '34'), ('S5', '27')])
57757346
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.
Выходные данные:
Целое.
Тесты:
>>> main('31394934')
32251747
>>> main('416890151')
416176617
>>> main('59367900')
62507278
>>> main('514233638')
512566953
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main('1829666')
'0x110b03'
>>> main('308553')
'0xa5500'
>>> main('2019424')
'0x31003'
>>> main('77692')
'0x3ef00'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main('0xa18d552')
'0x18d4a'
>>> main('0xda89dca')
'0x289be'
>>> main('0x4ab6797')
'0x2b693'
>>> main('0x2625be4')
'0x6244d'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.
Выходные данные:
Целое.
Тесты:
>>> main('12303619132')
11370411248
>>> main('788869862')
6717049754
>>> main('14642403121')
11791335622
>>> main('16181166900')
529068242
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Тесты:
>>> main('0x1d84a0cb1')
'L1': 1, 'L2': 203, 'L3': 0, 'L4': 20, 'L5': 4, 'L6': 59}
{
>>> main('0xdbaa7a5e')
'L1': 14, 'L2': 933, 'L3': 1, 'L4': 20, 'L5': 58, 'L6': 27}
{
>>> main('0x8600e4e2')
'L1': 2, 'L2': 590, 'L3': 1, 'L4': 1, 'L5': 96, 'L6': 16}
{
>>> main('0x75660886')
'L1': 6, 'L2': 136, 'L3': 0, 'L4': 12, 'L5': 86, 'L6': 14} {
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.
Выходные данные:
Десятичная строка.Тесты:
>>> main((0, 12, 200))
'411136'
>>> main((0, 4, 44))
'90624'
>>> main((0, 10, 138))
'283904'
>>> main((3, 14, 248))
'509699'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: целое.
Выходные данные:
Десятичная строка.Тесты:
>>> main([('I1', 391), ('I3', 1), ('I4', 501), ('I5', 20)])
'171878791'
>>> main([('I1', 352), ('I3', 0), ('I4', 178), ('I5', 44)])
'370557280'
>>> main([('I1', 73), ('I3', 1), ('I4', 681), ('I5', 44)])
'374679625'
>>> main([('I1', 878), ('I3', 1), ('I4', 317), ('I5', 22)])
'187149166'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main([('V1', '41'), ('V2', '699'), ('V3', '803'), ('V4', '0'), ('V5', '80')])
'0x506475da9'
>>> main([('V1', '89'), ('V2', '999'), ('V3', '523'), ('V4', '0'), ('V5', '132')])
'0x84417f3d9'
>>> main([('V1', '87'), ('V2', '886'), ('V3', '177'), ('V4', '1'), ('V5', '252')])
'0xfc963bb57'
>>> main([('V1', '40'), ('V2', '71'), ('V3', '610'), ('V4', '1'), ('V5', '156')])
'0x9ccc423a8'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main('0xe9d4c690b')
'E2': '4', 'E3': '26', 'E4': '12', 'E5': '117', 'E6': '58'}
{
>>> main('0x460829e667')
'E2': '9', 'E3': '57', 'E4': '41', 'E5': '32', 'E6': '280'}
{
>>> main('0x1278a0f6b1')
'E2': '10', 'E3': '61', 'E4': '32', 'E5': '226', 'E6': '73'}
{
>>> main('0x366238c41d')
'E2': '0', 'E3': '49', 'E4': '56', 'E5': '136', 'E6': '217'} {
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.
Тесты:
>>> main(644332)
0, 118, 0, 53, 9)
(
>>> main(245806)
0, 23, 0, 48, 3)
(
>>> main(2262804)
0, 10, 3, 33, 34)
(
>>> main(3401711)
1, 119, 3, 57, 51) (
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.
Выходные данные:
Целое.
Тесты:
>>> main(1784831)
2080718
>>> main(885844)
574817
>>> main(804324)
581137
>>> main(1098726)
867888
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main(('59', '5', '20', '0', '19'))
'79776315'
>>> main(('7', '3', '171', '1', '107'))
'451589639'
>>> main(('8', '0', '21', '1', '6'))
'27349000'
>>> main(('56', '4', '183', '0', '107'))
'449542200'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main(25610)
'P1', '2'), ('P2', '2'), ('P3', '4'), ('P4', '12'), ('P5', '0')]
[(
>>> main(61876)
'P1', '0'), ('P2', '45'), ('P3', '1'), ('P4', '14'), ('P5', '1')]
[(
>>> main(62313)
'P1', '1'), ('P2', '26'), ('P3', '3'), ('P4', '14'), ('P5', '1')]
[(
>>> main(14284)
'P1', '0'), ('P2', '51'), ('P3', '7'), ('P4', '6'), ('P5', '0')] [(
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Тесты:
>>> main('8022958906')
'N1': 26, 'N3': 82, 'N4': 17, 'N5': 119}
{
>>> main('5094353188')
'N1': 4, 'N3': 22, 'N4': 29, 'N5': 75}
{
>>> main('8580818132')
'N1': 20, 'N3': 83, 'N4': 27, 'N5': 127}
{
>>> main('7048161471')
'N1': 31, 'N3': 105, 'N4': 0, 'N5': 105} {
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main('5311011517')
'0xf34802f54f'
>>> main('7664802131')
'0x730c054f72'
>>> main('12386498873')
'0x5f2404e5b8'
>>> main('4980975728')
'0x750e01c04a'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main('291')
'0x8d'
>>> main('486')
'0x9e'
>>> main('318')
'0xfc'
>>> main('126')
'0xf8'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main(18669)
'237', '0', '0', '9')
(
>>> main(19132)
'188', '2', '0', '9')
(
>>> main(25425)
'81', '3', '0', '12')
(
>>> main(3975)
'135', '3', '1', '1') (
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Тесты:
>>> main(12540)
'G1': 4, 'G2': 3, 'G3': 3, 'G4': 97}
{
>>> main(10880)
'G1': 0, 'G2': 0, 'G3': 0, 'G4': 85}
{
>>> main(6460)
'G1': 4, 'G2': 3, 'G3': 1, 'G4': 50}
{
>>> main(12838)
'G1': 6, 'G2': 0, 'G3': 1, 'G4': 100} {
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.
Выходные данные:
Десятичная строка.
Тесты:
>>> main(112491)
'48045'
>>> main(111797)
'23117'
>>> main(82424)
'33002'
>>> main(80592)
'3433'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main('20478600')
'B1', '0x8'), ('B2', '0x4'), ('B3', '0xd'), ('B4', '0x3'), ('B5', '0x4e')]
[(
>>> main('6048240')
'B1', '0x10'), ('B2', '0xf'), ('B3', '0x4'), ('B4', '0x2'), ('B5', '0x17')]
[(
>>> main('8922816')
'B1', '0x0'), ('B2', '0x6'), ('B3', '0x3'), ('B4', '0x1'), ('B5', '0x22')]
[(
>>> main('5282672')
'B1', '0x10'), ('B2', '0xb'), ('B3', '0xd'), ('B4', '0x4'), ('B5', '0x14')] [(
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main('124073289')
'0x26d56a'
>>> main('48340465')
'0x2077db'
>>> main('130483457')
'0x6147e'
>>> main('110256417')
'0x1384d4'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main('0x383f0f91dd')
'0x8e1fe077f'
>>> main('0x3c4948f028')
'0x38091f1a09'
>>> main('0x1334182871')
'0x142304cc74'
>>> main('0x173fa7b43a')
'0x1a14f5cebf'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main([('R1', '0x163'), ('R2', '0x5a'), ('R4', '0x58')])
'369191267'
>>> main([('R1', '0x257'), ('R2', '0x6f'), ('R4', '0x3a')])
'243383895'
>>> main([('R1', '0x3b9'), ('R2', '0x27'), ('R4', '0x5a')])
'377528249'
>>> main([('R1', '0x23a'), ('R2', '0x67'), ('R4', '0x43')])
'281124410'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main(331365349)
'0x137ca1c0'
>>> main(81117899)
'0x4596e00'
>>> main(2119236309)
'0x7e5aa7c0'
>>> main(2094844821)
'0x7c72a640'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Выходные данные:
Целое.Тесты:
>>> main({'Z1': 5, 'Z2': 110, 'Z3': 32, 'Z4': 467, 'Z5': 12})
6932202357
>>> main({'Z1': 5, 'Z2': 151, 'Z3': 132, 'Z4': 397, 'Z5': 13})
7395878077
>>> main({'Z1': 2, 'Z2': 62, 'Z3': 442, 'Z4': 141, 'Z5': 7})
3906851314
>>> main({'Z1': 2, 'Z2': 131, 'Z3': 266, 'Z4': 326, 'Z5': 5})
3026736154
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Целое.Тесты:
>>> main([('U1', '0x0'), ('U2', '0xa'), ('U3', '0x1'), ('U4', '0x0')])
52
>>> main([('U1', '0x1'), ('U2', '0xc'), ('U3', '0x4'), ('U4', '0x0')])
153
>>> main([('U1', '0x0'), ('U2', '0xd'), ('U3', '0x3'), ('U4', '0x0')])
122
>>> main([('U1', '0x1'), ('U2', '0xa'), ('U3', '0x5'), ('U4', '0x0')])
181
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main('33196')
'0x8130'
>>> main('61314')
'0xef08'
>>> main('56307')
'0xdbc8'
>>> main('32667')
'0x7fe8'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.
Выходные данные:
Целое.Тесты:
>>> main((123, 0, 177))
5807808
>>> main((42, 2, 319))
10472064
>>> main((20, 2, 272))
8930560
>>> main((121, 0, 283))
9281088
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.
Выходные данные:
Целое.
Тесты:
>>> main('3591397')
5768923
>>> main('7214162')
2362817
>>> main('4244995')
3147800
>>> main('952822')
7078359
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main('0x3ecbccb')
'0x17997f'
>>> main('0x325e88c')
'0x3d118e'
>>> main('0xcff19e')
'0x3e33d1'
>>> main('0xfc448d')
'0x891b9'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.
Тесты:
>>> main(266323)
83, 0, 0, 4)
(
>>> main(1751052)
12, 0, 5, 26)
(
>>> main(1959539)
115, 0, 7, 29)
(
>>> main(2073001)
41, 1, 5, 31) (
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Выходные данные:
Целое.Тесты:
>>> main({'O1': 148, 'O2': 64, 'O3': 6, 'O4': 30, 'O5': 68, 'O6': 49})
106383704212
>>> main({'O1': 168, 'O2': 36, 'O3': 5, 'O4': 30, 'O5': 63, 'O6': 27})
59055098024
>>> main({'O1': 479, 'O2': 113, 'O3': 6, 'O4': 3, 'O5': 4, 'O6': 3})
6511584223
>>> main({'O1': 152, 'O2': 115, 'O3': 4, 'O4': 5, 'O5': 58, 'O6': 21})
46073177752
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main(('953', '2', '5', '0', '5'))
'1334201'
>>> main(('603', '0', '1', '2', '100'))
'26350171'
>>> main(('848', '0', '11', '0', '1'))
'308048'
>>> main(('217', '0', '15', '3', '52'))
'13889753'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main('7028457')
'0x73ef40'
>>> main('3824615')
'0x65bdc0'
>>> main('2035502')
'0x70f0e0'
>>> main('1681135')
'0x5a6cc0'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main((2, 36, 124, 14))
'0x77c92'
>>> main((1, 32, 125, 35))
'0x11fd81'
>>> main((1, 28, 90, 18))
'0x95a71'
>>> main((1, 9, 39, 62))
'0x1f2725'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.
Выходные данные:
Целое.
Тесты:
>>> main('432537040')
550766
>>> main('358349376')
21842
>>> main('26960542')
984596
>>> main('490695235')
128210
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main([('J1', '0x0'), ('J3', '0x5d'), ('J4', '0x22')])
'0x222e800'
>>> main([('J1', '0x1'), ('J3', '0x5b'), ('J4', '0x34')])
'0x342d801'
>>> main([('J1', '0x0'), ('J3', '0x1bd'), ('J4', '0x3f')])
'0x3fde800'
>>> main([('J1', '0x1'), ('J3', '0x80'), ('J4', '0x14')])
'0x1440001'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main('115948')
'S1': '0x0', 'S2': '0x0', 'S3': '0x1', 'S4': '0x1d', 'S5': '0xe2'}
{
>>> main('42337')
'S1': '0x1', 'S2': '0x0', 'S3': '0x0', 'S4': '0x2c', 'S5': '0x52'}
{
>>> main('121670')
'S1': '0x0', 'S2': '0x1', 'S3': '0x1', 'S4': '0x28', 'S5': '0xed'}
{
>>> main('111400')
'S1': '0x0', 'S2': '0x0', 'S3': '0x0', 'S4': '0x25', 'S5': '0xd9'} {
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main('0x91c46f796a')
'S2': '30', 'S3': '222', 'S4': '226', 'S5': '18'}
{
>>> main('0xb0d46c911b')
'S2': '4', 'S3': '217', 'S4': '106', 'S5': '22'}
{
>>> main('0x5d401a11ab')
'S2': '4', 'S3': '52', 'S4': '672', 'S5': '11'}
{
>>> main('0xd49a52f155')
'S2': '28', 'S3': '165', 'S4': '589', 'S5': '26'} {