Лучшие помощники
- Megamozg 2180 б
- Matalya1 1800 б
- DevAdmin 1690 б
- arkasha_bortnikov 840 б
- Dwayne_Johnson 840 б
2 апреля 2023 18:52
1005
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом:1) Строится двоичная запись числа N.
2) К этой записи дописывается справа бит чётности: 0, если в двоичном коде числа N было чётное число единиц, и 1, если нечётное.
3) К полученному результату дописывается ещё один бит чётности.
Полученная таким образом запись (в ней на два разряда больше, чем в записи исходного числа N) является двоичной записью искомого числа R. Укажите минимальное число R, большее 130, которое может быть получено в результате работы этого алгоритма. В ответе это число запишите в десятичной системе
1
ответ
Переведём число 130 в двоичную систему счисления:
13010=100000102
Число N должно быть на два разряда меньше, то есть уберем из двоичной записи числа 130 два левых разряда:
100000
Теперь попробуем применить к нему алгоритм. Сначала складываются три левых разряда, и остаток от деления на 2 этой суммы запишем в конец числа справа:
1000001
Теперь сложим правые четыре разряда, и остаток от деления этой суммы тоже запишем слева:
10000011
Как мы видим, при числе 1000002 мы получили число 100000112, что на единицу больше, чем число 130. При этом 1000002 = 3210, то есть минимальное возможное N не только для R, которое больше 130, но и по условию задания.
Ответ: 32
13010=100000102
Число N должно быть на два разряда меньше, то есть уберем из двоичной записи числа 130 два левых разряда:
100000
Теперь попробуем применить к нему алгоритм. Сначала складываются три левых разряда, и остаток от деления на 2 этой суммы запишем в конец числа справа:
1000001
Теперь сложим правые четыре разряда, и остаток от деления этой суммы тоже запишем слева:
10000011
Как мы видим, при числе 1000002 мы получили число 100000112, что на единицу больше, чем число 130. При этом 1000002 = 3210, то есть минимальное возможное N не только для R, которое больше 130, но и по условию задания.
Ответ: 32
0
·
Хороший ответ
4 апреля 2023 18:52
Остались вопросы?
Еще вопросы по категории Информатика
Чему будет равно значение целой переменной «a» после выполнения этого фрагмента программы? a = 2 fоr i in rаngе(4): a +=...
For i in range (14,11,1): print (i) найдите пж...
Написать функции добавления подстроки и удаления подстроки в любом указанном месте заданной строки.язык программирования C++...
Каков состав и функции операционных систем?...
ТЕКСТ ЗАДАНИЯ Ситуация «Ученик 6 класса пишет реферат по информатике на тему «Операционные системы». Часть информации он скопировал из интернет источн...
Все предметы