какое наименьшее число превышающее 100 может получиться в результате работы автомата

Какое наименьшее число превышающее 100 может получиться в результате работы автомата

Автомат обрабатывает натуральное число N по следующему алгоритму:

1. Строится двоичная запись числа N.

2. В конец записи (справа) добавляется (дублируется) последняя цифра.

3. Складываются все цифры полученной двоичной записи. В конец записи (справа) дописывается остаток от деления суммы на 2.

4. Результат переводится в десятичную систему и выводится на экран.

Пример. Дано число N = 13. Алгоритм работает следующим образом:

1. Двоичная запись числа N: 1101.

2. Дублируется последняя цифра, новая запись 11011.

3. Сумма цифр полученной записи 4, остаток от деления на 2 равен 0, новая запись 110110.

4. На экран выводится число 54.

Какое наименьшее число, большее 105, может появиться на экране в результате работы автомата?

Рассмотрим числа, большие 105, и найдем наименьшее число, которое является результатом работы алгоритма.

106 = 11010102 — не является результатом работы алгоритма.

107 = 11010112 — не является результатом работы алгоритма.

108 = 11011002 — не является результатом работы алгоритма.

109 = 11011012 — не является результатом работы алгоритма.

110 = 11011102 — не является результатом работы алгоритма.

111 = 11011112 — является результатом работы алгоритма для числа 110112.

Источник

Какое наименьшее число превышающее 100 может получиться в результате работы автомата

Автомат обрабатывает натуральное число N (0 ≤ N ≤ 255) по следующему алгоритму:

1. Строится восьмибитная двоичная запись числа N.

2. Все цифры двоичной записи заменяются на противоположные (0 на 1, 1 на 0).

3. Полученное число переводится в десятичную запись.

4. Из нового числа вычитается исходное, полученная разность выводится на экран.

Пример. Дано число N = 13. Алгоритм работает следующим образом.

1. Восьмибитная двоичная запись числа N: 00001101.

2. Все цифры заменяются на противоположные, новая запись 11110010.

3. Десятичное значение полученного числа 242.

4. На экран выводится число 242 − 13 = 229.

Какое число нужно ввести в автомат, чтобы в результате получилось 111?

На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число следующим образом.

1) Строится двоичная запись числа N.

2) К этой записи дописываются справа ещё два разряда по следующему правилу: если N чётное, в конец числа (справа) дописываются два нуля, в противном случае справа дописываются две единицы. Например, двоичная запись 1001 числа 9 будет преобразована в 100111.

Полученная таким образом запись (в ней на два разряда больше, чем в записи исходного числа N) является двоичной записью числа — результата работы данного алгоритма.

Укажите максимальное число N, для которого результат работы алгоритма будет меньше 134. В ответе это число запишите в десятичной системе счисления.

Алгоритм получает на вход натуральное число N > 1 и строит по нему новое число R следующим образом:

1. Строится двоичная запись числа N.

2. В конец записи (справа) дописывается вторая справа цифра двоичной записи.

3. В конец записи (справа) дописывается вторая слева цифра двоичной записи.

4. Результат переводится в десятичную систему.

Пример. Дано число N = 13. Алгоритм работает следующим образом:

1. Двоичная запись числа N: 1101.

2. Вторая справа цифра 0, новая запись 11010.

3. Вторая слева цифра 1, новая запись 110101.

4. Результат работы алгоритма R = 53.

При каком наименьшем числе N в результате работы алгоритма получится R > 180? В ответе запишите это число в десятичной системе счисления.

Автомат обрабатывает натуральное число N (128 ≤ N ≤ 255) по следующему алгоритму:

1. Строится восьмибитная двоичная запись числа N.

2. Все цифры двоичной записи заменяются на противоположные (0 на 1, 1 на 0).

3. Полученное число переводится в десятичную запись.

4. Из исходного числа вычитается полученное, разность выводится на экран.

Пример. Дано число N = 131. Алгоритм работает следующим образом:

1. Восьмибитная двоичная запись числа N: 10000011.

2. Все цифры заменяются на противоположные, новая запись: 01111100.

3. Десятичное значение полученного числа: 124.

4. На экран выводится число: 131 – 124 = 7.

Какое число нужно ввести в автомат, чтобы в результате получилось 105?

Алгоритм получает на вход натуральное число N и строит по нему новое число R следующим образом:

1. Строится двоичная запись числа N.

2. Складываются все цифры полученной двоичной записи. В конец записи (справа) дописывается остаток от деления суммы на 2.

3. Предыдущий пункт повторяется для записи с добавленной цифрой.

4. Результат переводится в десятичную систему.

Пример. Дано число N = 13. Алгоритм работает следующим образом:

1. Двоичная запись числа N: 1101.

2. Сумма цифр двоичной записи 3, остаток от деления на 2 равен 1, новая запись 11011.

3. Сумма цифр полученной записи 4, остаток от деления на 2 равен 0, новая запись 110110.

4. Результат работы алгоритма R = 54.

При каком наименьшем числе N в результате работы алгоритма получится R > 170? В ответе запишите это число в десятичной системе счисления.

Автомат обрабатывает натуральное число N по следующему алгоритму:

1. Строится двоичная запись числа N.

2. Складываются все цифры полученной двоичной записи. В конец записи (справа) дописывается остаток от деления суммы на 2.

3. Предыдущий пункт повторяется для записи с добавленной цифрой.

4. Результат переводится в десятичную систему и выводится на экран.

Пример. Дано число N = 13. Алгоритм работает следующим образом:

1. Двоичная запись числа N: 1101.

2. Сумма цифр двоичной записи 3, остаток от деления на 2 равен 1, новая запись 11011.

3. Сумма цифр полученной записи 4, остаток от деления на 2 равен 0, новая запись 110110.

4. На экран выводится число 54.

Какое наименьшее число, большее 93, может появиться на экране в результате работы автомата?

Автомат обрабатывает натуральное число N (0 ≤ N ≤ 255) по следующему алгоритму:

1. Строится восьмибитная двоичная запись числа N.

2. Все цифры двоичной записи заменяются на противоположные (0 на 1, 1 на 0).

3. Полученное число переводится в десятичную запись.

4. Из нового числа вычитается исходное, полученная разность выводится на экран.

Пример. Дано число N = 13. Алгоритм работает следующим образом.

1. Восьмибитная двоичная запись числа N: 00001101.

2. Все цифры заменяются на противоположные, новая запись 11110010.

3. Десятичное значение полученного числа 242.

4. На экран выводится число 242 − 13 = 229.

Какое число нужно ввести в автомат, чтобы в результате получилось 133?

На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом.

1. Строится двоичная запись числа N.

2. К этой записи дописываются справа ещё два разряда по следующему правилу:

а) складываются все цифры двоичной записи, и остаток от деления суммы на 2 дописывается в конец числа (справа). Например, запись 11100 преобразуется в запись 111001;

б) над этой записью производятся те же действия — справа дописывается остаток от деления суммы цифр на 2.

Полученная таким образом запись (в ней на два разряда больше, чем в записи исходного числа N) является двоичной записью искомого числа R.

Укажите минимальное число N, после обработки которого с помощью этого алгоритма получается число, большее, чем 85. В ответе запишите это число в десятичной системе счисления.

Автомат обрабатывает натуральное число N по следующему алгоритму:

1. Строится двоичная запись числа N.

2. Складываются все цифры полученной двоичной записи. В конец записи (справа) дописывается остаток от деления суммы на 2.

3. Предыдущий пункт повторяется для записи с добавленной цифрой.

4. Результат переводится в десятичную систему и выводится на экран.

Пример. Дано число N = 13. Алгоритм работает следующим образом:

1. Двоичная запись числа N: 1101.

2. Сумма цифр двоичной записи 3, остаток от деления на 2 равен 1, новая запись 11011.

3. Сумма цифр полученной записи 4, остаток от деления на 2 равен 0, новая запись 110110.

4. На экран выводится число 54.

Какое наименьшее число, большее 97, может появиться на экране в результате работы автомата?

Автомат обрабатывает натуральное число N по следующему алгоритму:

1. Строится двоичная запись числа N.

2. Запись «переворачивается», то есть читается справа налево. Если при этом появляются ведущие нули, они отбрасываются.

3. Полученное число переводится в десятичную запись и выводится на экран.

Пример. Дано число N = 58. Алгоритм работает следующим образом.

1. Двоичная запись числа N: 111010.

2. Запись справа налево: 10111 (ведущий ноль отброшен).

3. На экран выводится десятичное значение полученного числа 23.

Какое наибольшее число, не превышающее 100, после обработки автоматом даёт результат 13?

Источник

Какое наименьшее число превышающее 100 может получиться в результате работы автомата

На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число следующим образом.

1. Строится двоичная запись числа N.

2. Складываются все цифры полученной двоичной записи. В конец записи (справа) дописывается остаток от деления суммы на 2.

3. Предыдущий пункт повторяется для записи с добавленной цифрой.

4. Результат переводится в десятичную систему и выводится на экран.

Пример. Дано число N = 13. Алгоритм работает следующим образом:

1. Двоичная запись числа N: 1101.

2. Сумма цифр двоичной записи 3, остаток от деления на 2 равен 1, новая запись 11011.

3. Сумма цифр полученной записи 4, остаток от деления на 2 равен 0, новая запись 110110.

4. На экран выводится число 54.

Какое наибольшее число, меньшее 100, может появиться на экране в результате работы автомата?

Рассмотрим числа, меньшие 100, и определим наибольшее из них, которое может являться результатом работы алгоритма:

9910 = 110 00112 — не может являться результатом работы алгоритма.

9810 = 110 00102 — не может являться результатом работы алгоритма.

9710 = 110 00012 — не может являться результатом работы алгоритма.

9610 = 110 00002 — может являться результатом работы алгоритма.

Источник

Какое наименьшее число превышающее 100 может получиться в результате работы автомата

Факториалом натурального числа n (обозначается n!) называется произведение всех натуральных чисел от 1 до n. Например, 4! = 1 · 2 · 3 · 4 = 24.

Дано целое положительное число A. Необходимо найти ближайшее к A число, которое является точным факториалом какого-либо натурального числа. Если два точных факториала одинаково близки к A, нужно выбрать меньший из них. Например, для A = 15 нужно получить ответ 6, а для A = 20 – ответ 24.

Для решения этой задачи ученик написал программу, но, к сожалению, его программа неправильная.

Ниже эта программа для Вашего удобства приведена на пяти языках программирования.

DIM A, K, F AS INTEGER

WHILE F = F \ K − A THEN

while f = f div k − a

нц пока f = div(f,k) − a

using namespace std;

Последовательно выполните следующее.

1. Напишите, что выведет эта программа при вводе A = 5.

2. Приведите пример числа A, при котором программа выведет верный ответ. Укажите этот ответ.

3. Найдите в программе все ошибки (известно, что их не больше двух) и исправьте их. Для каждой ошибки выпишите строку, в которой она допущена, и приведите эту же строку в исправленном виде.

Достаточно указать ошибки и способ их исправления для одного языка программирования.

Обратите внимание: Вам нужно исправить приведённую программу, а не написать свою. Вы можете только заменять ошибочные строки, но не можете удалять строки или добавлять новые. Заменять следует только ошибочные строки: за исправления, внесённые в строки, не содержащие ошибок, баллы будут снижаться.

1. При вводе A = 5 программа выведет число 3.

2. Программа выводит верный ответ при вводе A = 1 (ответ 1) или A = 2 (ответ 2).

3. Программа содержит две ошибки.

1) Ошибочная проверка. После завершения цикла гарантированно выполняется неравенство FA > F/A, поэтому в сравнении после цикла левая часть всегда неотрицательна, а правая — отрицательна. Сравнение оказывается всегда верным, в результате выбирается не ближайший к A точный факториал, а ближайший, не превосходящий A.

2) Ошибочный вывод. Вместо значения факториала F выводится «основание» факториала K.

Пример исправления для языка Паскаль:

if f − a >= f div k − a

if f − a >= a − f div k

Возможно также использование функции abs (модуль числа):

if f − a >= abs(f div k − a)

Функцию abs можно использовать и в левой части сравнения. Это ничего не меняет по сути, так как левая часть заведомо неотрицательна, но такое использование нельзя считать ошибкой:

if abs(f − a) >= abs(f div k − a)

При использовании модуля для исправлении фрагмента на алгоритмическом языке следует использовать функцию iabs (модуль для целых чисел):

если f − a >= iabs(div(f,k) − a)

Использование в алгоритмическом языке функции abs вместо iabs отмечается как ошибка, но не влияет на оценку работы.

В программах на других языках ошибочные строки и их исправления аналогичны.

Незначительной опиской, не влияющей на оценку, следует считать отсутствие служебных слов и знаков после содержательной части исправления.

Источник

Какое наименьшее число превышающее 100 может получиться в результате работы автомата

На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом.

1. Строится двоичная запись числа N.

2. Далее эта запись обрабатывается по следующему правилу:

а) если число чётное, то к двоичной записи числа слева дописывается 1, а справа 0. Например, для исходного числа 1002 результатом будет являться число 11000;

б) если число нечётное, то к двоичной записи числа слева дописывается 11 и справа дописывается 11.

Полученная таким образом запись является двоичной записью искомого числа R.

Укажите минимальное число N, после обработки которого с помощью этого алгоритма получается число, большее, чем 52. В ответе запишите это число в десятичной системе счисления.

Рассмотрим числа, большие, чем 52, и найдем минимальное число, которое является результатом работы алгоритма.

5310 = 1101012 — не может являться результатом работы алгоритма.

5410 = 1101102 — не может являться результатом работы алгоритма.

5510 = 1101112 — не может являться результатом работы алгоритма.

5610 = 1110002 — является результатом работы алгоритма для числа 11002 = 1210.

5710 = 1110012 — не может являться результатом работы алгоритма.

5810 = 1110102 — не может являться результатом работы алгоритма.

5910 = 1110112 — не может являться результатом работы алгоритма.

6010 = 1111002 — является результатом работы алгоритма для числа 11102 = 1410.

6110 = 1111012 — не может являться результатом работы алгоритма.

6210 = 1111102 — не может являться результатом работы алгоритма.

6310 = 1111112 — является результатом работы алгоритма для числа 112 = 310.

Для чисел 110 и 210 после построения по ним новых чисел R будут получаться числа, меньшие 52: при обработке числа 110 будет получено число 111112, а при обработке числа 210 будет получено число 11002. Следовательно, минимальное число N, после обработки которого получается число, большее, чем 52, является 3.

Заметим, что при построении двоичной записи числа N левые (незначащие) нули не записываются. Например, число 1 будет представлено как 1, а не как 01.

На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число следующим образом.

1) Строится двоичная запись числа N.

2) К этой записи дописываются справа ещё два разряда по следующему правилу: если N чётное, в конец числа (справа) дописываются два нуля, в противном случае справа дописываются две единицы. Например, двоичная запись 1001 числа 9 будет преобразована в 100111.

Полученная таким образом запись (в ней на два разряда больше, чем в записи исходного числа N) является двоичной записью числа — результата работы данного алгоритма.

Укажите максимальное число N, для которого результат работы алгоритма будет меньше 134. В ответе это число запишите в десятичной системе счисления.

Заметим, что если число чётное, то в конец его двоичной записи добавляются цифры 00, а если нечётное — цифры 11.

Рассмотрим числа, меньшие 134, и найдем максимальное число, которое является результатом работы алгоритма.

13310 = 1000 01012 — не может являться результатом работы алгоритма.

13210 = 1000 01002 — не может являться результатом работы алгоритма.

13110 = 1000 00112 — не может являться результатом работы алгоритма.

13010 = 1000 00102 — не может являться результатом работы алгоритма.

12910 = 1000 00012 — не может являться результатом работы алгоритма.

12810 = 1000 00002 — может являться результатом работы алгоритма.

Выполним обратное преобразование числа 128 согласно алгоритму. Получим ответ — 32.

Алгоритм получает на вход натуральное число N > 1 и строит по нему новое число R следующим образом:

1. Строится двоичная запись числа N.

2. Вместо последней (самой правой) двоичной цифры дважды записывается вторая слева цифра двоичной записи.

3. Результат переводится в десятичную систему.

Пример. Дано число N = 19. Алгоритм работает следующим образом:

1. Двоичная запись числа N: 10011.

2. Вторая слева цифра 0, единица в конце записи заменяется на два нуля, новая запись 100100.

3. Результат работы алгоритма R = 36.

При каком наименьшем числе N в результате работы алгоритма получится R > 76? В ответе запишите это число в десятичной системе счисления.

Число на выходе должно превышать 7610 = 10011002. Заметим, что можно рассматривать только те числа, большие 7610, у которых в двоичной записи на конце стоят либо две единицы, либо два нуля. Также заметим, что для числа 7610 исходными числами могли быть либо 1001102, либо 1001112, ни одно из них нам не подходит, поскольку после работы алгоритма не получится числа, большего 76. Рассмотрим числа 1010002 и 1010012. Первое из них меньше, применим алгоритм к нему. В результате работы алгоритма получится число 10100002 = 80, что больше 76.

Таким образом, ответ — 1010002 = 4010.

Приведем другое решение.

Заметим, что в результате применения алгоритма к числам, различающимся только последней цифрой двоичной записи, получаются одинаковые результаты. В остальных случаях большим исходным числам соответствует больший результат. Рассмотрим числа, большие 7610 = 10011002, и выберем наименьшее из них, которое может являться результатом работы алгоритма:

7710 = 10011012 — не может являться результатом работы алгоритма.

7810 = 10011102 — не может являться результатом работы алгоритма.

7910 = 10011112 — не может являться результатом работы алгоритма.

8010 = 10100002 — может являться результатом работы алгоритма, может быть получено из числа 1010002 = 4010.

Таким образом, ответ — 1010002 = 4010.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *