Задание 5. Формальное исполнение простейших алгоритмов. ЕГЭ 2026 по информатике
Средний процент выполнения: 45%
Ответом к заданию 5 по информатике может быть цифра (число) или слово.
Алгоритм решения задания 5:
- Определи, что требуется: исполнить алгоритм, составить линейный алгоритм или восстановить исходные данные по результату.
- Выпиши все команды исполнителя и их эффект (что меняется после команды).
- Сделай таблицу состояния: шаг → команда → состояние после шага (значения переменных/позиция/счётчики и т.п.).
- Если нужно исполнить: стартуй с исходных данных и выполняй команды строго по порядку, заполняя таблицу.
- Если нужно составить линейный алгоритм: переведи каждое требуемое действие в команду исполнителя и запиши команды в нужной последовательности без развилок.
- Если нужно восстановить исходные данные: зафиксируй итог, отметь неизвестные и пройди по шагам (или в обратном порядке), используя изменения состояния, чтобы найти неизвестные значения.
- Проверь результат: повторно прогони полученные данные/алгоритм и убедись, что итог совпадает с условием.
- Запиши ответ в формате, который требует задание (число/последовательность/команды).
Подпишись на суперполезные материалы
Задачи для практики
Задача 1
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом.
1. Строится четверичная запись числа N.
2. Далее эта запись обрабатывается по следующему правилу:
а) если число N делится на 4, то слева к нему приписывается «1», а справа «03»;
б) если число N на 4 не делится, то остаток от деления на 4 умножается на 3, переводится в четверичную запись и дописывается в конец числа.
Полученная таким образом запись является четверичной записью искомого числа R.
3. Результат переводится в десятичную систему и выводится на экран.
Например, для исходного числа 1210 = 304 результатом является число 130034 = 45110, а для исходного числа 710 = 134 это число 13214 = 12110.
Укажите максимальное число N, после обработки которого с помощью этого алгоритма получается число R, меньшее 200. В ответе запишите это число в десятичной системе счисления.
Решение
ans = 0
for n in range(1, 1000):
s = ''
tmp = n
while tmp > 0:
s = str(tmp % 4) + s
tmp = tmp // 4
if n % 4 == 0:
r_str = '1' + s + '03'
else:
rem = n % 4
suffix = ''
tmp = rem * 3
while tmp > 0:
suffix = str(tmp % 4) + suffix
tmp = tmp // 4
r_str = s + suffix
if int(r_str, 4) < 200:
ans = n
print(ans)
Задача 2
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом.
1. Строится троичная запись числа N.
2. Далее эта запись обрабатывается в зависимости от остатка от деления N на 3:
а) если остаток равен 0, то слева к записи приписывается «1», а справа «210»;
б) если остаток равен 1, то вычисляется сумма цифр троичной записи, умножается на 3, переводится в троичную систему счисления и дописывается в конец числа;
в) если остаток равен 2, то слева к записи приписывается «2», а справа «01».
Полученная таким образом запись является троичной записью искомого числа R.
3. Результат переводится в десятичную систему и выводится на экран.
Например, для исходного числа 910 = 1003 результатом является число 11002103 = 99310, для числа 710 = 213 сумма цифр равна 3, 3·3 = 9 = 1003, результатом является число 211003 = 19810, а для числа 810 = 223 результатом является число 222013 = 23510.
Укажите минимальное чётное число R, большее 500, которое может быть получено с помощью описанного алгоритма. В ответе запишите это число в десятичной системе счисления.
Решение
def to3(n):
if n == 0:
return '0'
s = ''
while n > 0:
s = str(n % 3) + s
n = n // 3
return s
ans = []
for n in range(1, 10000):
s = to3(n)
rem = n % 3
if rem == 0:
r_str = '1' + s + '210'
elif rem == 1:
digit_sum = sum(int(c) for c in s)
r_str = s + to3(digit_sum * 3)
else:
r_str = '2' + s + '01'
r = int(r_str, 3)
if r > 500 and r % 2 == 0:
ans.append(r)
print(min(ans))
Задача 3
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом.
1. Строится двоичная запись числа N.
2. Далее эта запись обрабатывается по следующему правилу:
а) если число N делится на 5, то к этой записи в начало дописываются две последние двоичные цифры;
б) если число N на 5 не делится, то остаток от деления умножается на 5, переводится в двоичную запись и дописывается в конец числа.
Полученная таким образом запись является двоичной записью искомого числа R.
3. Результат переводится в десятичную систему и выводится на экран.
Например, для исходного числа 12 = 11002 результатом является число 110010102 = 202, а для исходного числа 5 = 1012 результатом является число 011012 = 13.
Укажите минимальное число N, после обработки которого с помощью этого алгоритма получается число R, не меньшее чем 283.
Решение
for n in range(1, 10000):
n_2 = bin(n)[2:]
if n % 5 == 0:
r_2 = n_2[-2:] + n_2
else:
x = bin((n % 5) * 5)[2:]
r_2 = n_2 + x
r = int(r_2, 2)
if r >= 283:
print(n)
break
Задача 4
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом.
1. Строится двоичная запись числа N.
2. К этой записи дописываются ещё три разряда по следующему правилу:
а) если N чётное, то в начало числа (слева) дописывается 1, а в конец (справа) 00.
б) если N нечётное, то в начало числа (слева) дописывается 10, а в конце числа (справа) дописывается 1.
Полученная таким образом запись (в ней на три разряда больше, чем в записи исходного числа N) является двоичной записью результирующего числа R.
Укажите такое наименьшее число N, для которого результат работы данного алгоритма больше числа 320. В ответе это число запишите в десятичной системе счисления.
Решение
Данный номер можно решить используя электронные таблицы и функции =ОСНОВАНИЕ(число;сиситема) и =ДЕС(число;система). Первая функция переводит число из десятичной системы счисления в любую другую, а вторая из любой системы счисления в десятичную.
Задача 5
Автомат получает на вход число X. По этому числу строится четырёхзначное число W по следующим правилам.
- Первая цифра числа W (разряд тысяч) — остаток от деления X на 6.
- Вторая цифра числа W (разряд сотен) — остаток от деления X на 5.
- Третья цифра числа W (разряд десятков) — остаток от деления X на 3.
- Четвёртая цифра числа W (разряд единиц) — остаток от деления X на 2.
Пример: Исходное число: 57335. Остаток от деления на 6 равен 5; остаток от деления на 5 равен 0; остаток от деления на 3 равен 2; остаток от деления на 2 равен 1. Результат работы автомата: 5021.
Укажите наименьшее двузначное число, при обработке которого автомат выдаёт результат 3101.
Решение
Остаток от деления на 2 = 1, значит число нечётное. Ост. от деления на 3 = 0, на 5 = 1 и на 6 равен 3. Наименьшее такое двузначное число = 21.
Решение при помощи программы на С++:
for (int i = 1; i < 150; ++i)
if (i % 6 == 3 && i % 5 == 1
&& i % 3 == 0 && i % 2 == 1) {
cout << i << " ";
break;
}
Задача 6
Автомат обрабатывает натуральное число N > 1 по следующему алгоритму.
- Строится троичная* запись числа N.
- Последняя цифра троичной* записи удаляется.
- Если исходное число N было нечётным, в конец записи (справа) дописываются цифры 20, если чётным — 02.
- Результат переводится в десятичную систему и выводится на экран.
*В системе счисления с основанием 3.
Пример. Дано число N = 13. Алгоритм работает следующим образом.
- Троичная запись числа N: 111.
- Удаляется последняя цифра, новая запись: 11.
- Исходное число нечётно, дописываются цифры 20, новая запись: 1120.
- На экран выводится число 42.
Какое число нужно ввести в автомат, чтобы в результате получилось 497?
Решение
Решение: Делаем обратные действия алгоритма: третьим шагом добавляли 2 разряда - сокращаем, деля на $3^2$ и округляя, получаем 55, вторым действием мы сокращали на 1 разряд - добавляем нулевой разряд на конец записи, умножая на 3, получаем 165,6 - округляем = 166. Проверим, проделав все действия алгоритма с этим числом: 1. $20011_3$ 2. $2001_3$ 3. $200102$ 4. 497 - результат сошёлся - наёдено верное число N = 166
Решение при помощи программы:
for i in range(1, 1000):
rez = i
rez //= 3 # сокращается последний разряд
rez *= 9 # добавляются два нуля к записи в троичной СС
if i % 2 == 0:
rez += 2
else:
rez += 6
if rez == 497:
print(i)
Задача 7
Автомат получает на вход число X. По этому числу строится четырёхзначное число W по следующим правилам.
- Первая цифра числа W (разряд тысяч) — остаток от деления X на 6.
- Вторая цифра числа W (разряд сотен) — остаток от деления X на 5.
- Третья цифра числа W (разряд десятков) — остаток от деления X на 3.
- Четвёртая цифра числа W (разряд единиц) — остаток от деления X на 2.
Пример: Исходное число: 57335. Остаток от деления на 6 равен 5; остаток от деления на 5 равен 0; остаток от деления на 3 равен 2; остаток от деления на 2 равен 1. Результат работы автомата: 5021.
Укажите наименьшее двузначное число, при обработке которого автомат выдаёт результат 4310.
Решение
Остаток от деления на 2 = 0, значит число чётное. Ост. от деления на 3 = 1, на 5 = 3 и на 6 равен 4. Наименьшее такое двузначное число = 28.
Решение при помощи программы на С++:
for (int i = 1; i < 100; ++i) {
if (i % 6 == 4 && i % 5 == 3
&& i % 3 == 1 && i % 2 == 0) {
cout << i << " ";
break;
}
}
Задача 8
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом:
1. Строится двоичная запись числа 2N.
2. Складываются все цифры двоичной записи, и остаток от деления суммы на 2 дописывается в конец числа (справа).
3. Над полученной записью производятся действия справа дописывается остаток от деления суммы цифр на 2. Например, двоичная запись 101 числа 5 будет преобразована в 10100.
Полученная таким образом запись является двоичной записью искомого числа R.
Укажите наибольшее число N, для которого результат работы алгоритма будет меньше 58. В ответе это число запишите в десятичной системе.
Решение
Заметим, что если задано число N, то двоичная запись числа 2N может быть получена из двоичной записи числа N, дописыванием справа цифры 0.
Если в полученной двоичной записи сумма цифр чётная, то согласно условиям 2 и 3, справа будет дописано 00. Если в полученной двоичной записи сумма цифр нечётная, то согласно условиям 2 и 3, справа будет дописано 10.
То есть в результате работы алгоритма последние три цифры в двоичной записи могут иметь вид 000 или 010, и сумма всех цифр - чётна.
Результатом работы алгоритма должно быть число меньше 58. Возьмём число 57 и переведём его в двоичную систему счисления. $57_{10} = 111001_2$. Это число не может являться результатом работы алгоритма, так как оно оканчивается на 001. Поэтому найдём наибольшее двоичное число, которое меньше чем $111001_2$, при этом оканчивается на 000 или 010, и сумма всех цифр - чётна.
Таким числом является $110010_2$.
Согласно алгоритму, последние две цифры 10 этого числа были приписаны к числу 2N. Значит 2N = $1100_2$. Но тогда исходное число N равно $110_2 = 6_{10}$.
Ответ: 6.
Задача 9
Автомат получает на вход число X. По этому числу строится четырёхзначное число W по следующим правилам.
- Первая цифра числа W (разряд тысяч) — остаток от деления X на 6.
- Вторая цифра числа W (разряд сотен) — остаток от деления X на 5.
- Третья цифра числа W (разряд десятков) — остаток от деления X на 3.
- Четвёртая цифра числа W (разряд единиц) — остаток от деления X на 2.
Пример: Исходное число: 57335. Остаток от деления на 6 равен 5; остаток от деления на 5 равен 0; остаток от деления на 3 равен 2; остаток от деления на 2 равен 1. Результат работы автомата: 5021.
Укажите наименьшее двузначное число, при обработке которого автомат выдаёт результат 4210.
Решение
Остаток от деления на 2 = 0, значит число чётное. Ост. от деления на 3 = 1, на 5 = 2 и на 6 равен 4. Наименьшее такое двузначное число = 22.
Решение при помощи программы на С++:
for (int i = 1; i < 150; ++i)
if (i % 6 == 4 && i % 5 == 2
&& i % 3 == 1 && i % 2 == 0) {
cout << i << " ";
break;
}
Задача 10
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом.
1) Строится двоичная запись числа N.
2) К этой записи дописываются справа ещё два разряда по следующему правилу:
а) складываются все цифры двоичной записи, и остаток от деления суммы на 2 дописывается в конец числа (справа). Например, запись 11001 преобразуется в запись 110011;
б) над этой записью производятся те же действия: справа дописывается остаток от деления суммы цифр на 2.
Полученная таким образом запись (в ней на два разряда больше, чем в записи исходного числа N) является двоичной записью искомого числа R.
Укажите максимальное число R, которое не превышает 152 и может являться результатом работы алгоритма. В ответе это число запишите в десятичной системе.
Решение
Чтобы получить примерное значение N из R, разделим 152 на значение, равное системе счисления в степени количества добавляемых разрядов.
Система счисления: 2.Количество добавляемых разрядов: 2.
152/4 равно 38.
Если N = 38, то его двоичная запись = 100110, дописываем 2 разряда, получаем: 10011010, переводим число в десятичную, получаем R = 154. Уже не подходит.
Проверим меньшее значение: Если N = 37, то его двоичная запись = 100101, дописываем 2 разряда, получаем: 10010110, переводим число в десятичную, получаем R = 150. Подходит.
Ещё вариант решения:
1. Результат работы алгоритма может оканчиваться на 10, если в исходном числе сумма цифр в довичной записи нечётна, или 00, если сумма чётна.
2. Берём наибольшее R подходящее под условие "не превышает 152": $152_10 = 10011000_2$ и оно не может являться результатом, поскольку оканчивается на 00, но сумма цифр у исходного числа ($100110_2$ если отбросить последние два разряда) нечётна. Значит берём меньше.
3. Следующее число с подходящим окончанием двоичной записи: $150_10 = 10010110_2$ и оно является искомым результатом, поскольку оканчивается на 10 и при этом сумма цифр нечётна (у двоичной записи исходного числа $100101_2$)
Ответ: 150.
Задача 11
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом.
1) Строится троичная запись числа N.
2) К этой записи дописываются справа ещё два разряда по следующему правилу:
а) Вычисляется сумма цифр троичной записи числа, остаток от деления этой суммы на 3 дописывается в конец числа.
б) Пункт а повторяется ещё раз с полученным числом. Например, запись 100 преобразуется в запись 10012;
Полученная таким образом запись (в ней на два разряда больше, чем в записи исходного числа N) является троичной записью искомого числа R. Укажите минимальное число N, для которого результат работы алгоритма превышает 71. В ответе это число запишите в десятичной системе.
Решение
Чтобы получить примерное значение N из R, разделим 71 на значение, равное системе счисления в степени количества добавляемых разрядов.
Система счисления: 3.
Количество добавляемых разрядов: 2.
71/9 примерно равно 7.
Если N = 7, то его троичная запись = 21, дописываем 2 разряда, получаем: 2100, переводим число в десятичную, получаем R = 63. Не подходит.
Возьмём большее число.
Если N = 8, то его троичная запись = 22, дописываем 2 разряда, получаем: 2212, переводим число в десятичную, получаем R = 77. Подходит.
Ответ: 8.
Задача 12
Автомат получает на вход четырёхзначное число. Из этого числа строится новое число по следующим правилам.
1. Вычисляются три числа: сумма первой и второй цифр, сумма второй и третьей цифр и сумма третьей и четвёртой цифр.
2. Полученные три числа записываются друг за другом в порядке возрастания (без разделителей).
Пример. Исходное четырёхзначное число: 2487. Сумма первой и второй цифр: 6. Сумма второй и третьей цифр: 12. Сумма третьей и четвёртой цифр: 15. Результат: 61215.
Укажите наименьшее число, в результате обработки которого автомат выдаст число 21015.
Решение
Заметим, что полученное в результате выполнения алгоритма число можно разбить на три числа, каждое из которых не превосходит 18 (согласно алгоритму, выполняется только поразрядное суммирование, а сумма любых двух цифр не превосходит 18).
Число 21015 можно разбить на числа 2, 10 и 15. Расположим их в порядке возрастания, чтобы число получилось наименьшим. Сумма первой и второй цифры = 2, поставим на первое место самую маленькую цифру - 1, тогда вторая цифра 1. Сумма второй и третьей цифры - 10. Тогда третья цифра = 10 - 1 = 9. Последняя цифра равна 15 - 9 = 6.
Ответ: 1196.
Задача 13
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом.
1) Строится двоичная запись числа N.
2) К этой записи дописываются справа ещё два разряда по следующему правилу:
а) складываются все цифры двоичной записи, и остаток от деления суммы на 2 дописывается в конец числа (справа). Например, запись 11001 преобразуется в запись 110011;
б) над этой записью производятся те же действия: справа дописывается остаток от деления суммы цифр на 2.
Полученная таким образом запись (в ней на два разряда больше, чем в записи исходного числа N) является двоичной записью искомого числа R. Укажите максимальное число R, которое не превышает 99 и может являться результатом работы алгоритма. В ответе это число запишите в десятичной системе.
Решение
Чтобы получить примерное значение N из R, разделим 99 на значение, равное системе счисления в степени количества добавляемых разрядов.
Система счисления: 2.
Количество добавляемых разрядов: 2.
99/4 примерно равно 25.
Если N = 25, то его двоичная запись = 11001, дописываем 2 разряда, получаем: 1100110, переводим число в десятичную, получаем R = 102. Уже не подходит.
Проверим меньшее значение:
Если N = 24, то его двоичная запись = 11000, дописываем 2 разряда, получаем: 1100000, переводим число в десятичную, получаем R = 96. Подходит.
Ответ: 96.
Задача 14
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом.
1) Строится двоичная запись числа N.
2) К этой записи дописываются справа ещё два разряда по следующему правилу:
а) складываются все цифры двоичной записи, и остаток от деления суммы на 2 дописывается в конец числа (справа). Например, запись 11001 преобразуется в запись 110011;
б) над этой записью производятся те же действия: справа дописывается остаток от деления суммы цифр на 2.
Полученная таким образом запись (в ней на два разряда больше, чем в записи исходного числа N) является двоичной записью искомого числа R. Укажите максимальное число N, для которого результат работы алгоритма не превышает 99. В ответе это число запишите в десятичной системе.
Решение
Чтобы получить примерное значение N из R, разделим 99 на значение, равное системе счисления в степени количества добавляемых разрядов.
Система счисления: 2.
Количество добавляемых разрядов: 2.
99/4 примерно равно 25.
Если N = 25, то его двоичная запись = 11001, дописываем 2 разряда, получаем: 1100110, переводим число в десятичную, получаем R = 102. Уже не подходит.
Проверим меньшее значение:
Если N = 24, то его двоичная запись = 11000, дописываем 2 разряда, получаем: 1100000, переводим число в десятичную, получаем R = 96. Подходит.
Ответ: 24.
Задача 15
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом.
1) Строится двоичная запись числа N.
2) К этой записи дописываются справа ещё два разряда по следующему правилу:
Если N чётное, справа дописывается 11, а если N нечётное, справа дописывается 00. Например, запись 100 преобразуется в запись 10011;
Полученная таким образом запись (в ней на два разряда больше, чем в записи исходного числа N) является двоичной записью искомого числа R. Укажите минимальное число R, которое может являться результатом работы алгоритма и превышает 50. В ответе это число запишите в десятичной системе.
Решение
Чтобы получить примерное значение N из R, разделим 50 на значение, равное системе счисления в степени количества добавляемых разрядов.
Система счисления: 2.
Количество добавляемых разрядов: 2.
50/4 примерно равно 12.
Если N = 12, то его двоичная запись = 1100, дописываем 2 разряда, получаем: 110011 (т.к. 12 - чётное), переводим число в десятичную, получаем R = 51. Подходит.
Возьмём меньшее число
Если N = 11, то его двоичная запись =1011, дописываем 2 разряда, получаем: 101100 (т.к. 11 - нечётное), переводим число в десятичную, получаем R = 44. Не подходит.
Ответ: 51.
Задача 16
Автомат получает на вход четырёхзначное число. Из этого числа строится новое число по следующим правилам.
1. Вычисляются три числа: сумма первой и второй цифр, сумма второй и третьей цифр и сумма третьей и четвёртой цифр.
2. Полученные три числа записываются друг за другом в порядке возрастания (без разделителей).
Пример. Исходное четырёхзначное число: 2487. Сумма первой и второй цифр: 6. Сумма второй и третьей цифр: 12. Сумма третьей и четвёртой цифр: 15. Результат: 61215.
Укажите наименьшее число, в результате обработки которого автомат выдаст число 4916.
Решение
Заметим, что полученное в результате выполнения алгоритма число можно разбить на три числа, каждое из которых не превосходит 18 (согласно алгоритму, выполняется только поразрядное суммирование, а сумма любых двух цифр не превосходит 18).
Число 4916 можно разбить на числа 4, 9 и 16. Расположим их в порядке возрастания, чтобы число получилось наименьшим. Сумма первой и второй цифры = 4, поставим на первое место самую маленькую цифру - 1, тогда вторая цифра 3. Сумма второй и третьей цифры - 9. Тогда третья цифра = 9 - 3 = 6. Последняя цифра равна 16 - 6 = 10, что невозможно. Уменьшим эту цифру на 1, получим 9, тогда третья цифра = 16 - 9 = 7. Вторая цифра = 9 - 7 = 2. Первая цифра = 4 - 2 = 2.
Ответ: 2279.
Задача 17
Автомат получает на вход трёхзначное число. Из этого числа строится новое число по следующим правилам.
1. Вычисляются два числа: сумма первой и второй цифр и сумма второй и третьей цифр .
2. Полученные два числа записываются друг за другом в порядке убывания (без разделителей).
Пример. Исходное трёхзначное число: 579. Сумма первой и второй цифр: 12. Сумма второй и третьей цифр: 16. Результат: 1612.
Укажите наибольшее число, в результате обработки которого автомат выдаст число 125.
Решение
Заметим, что полученное в результате выполнения алгоритма число можно разбить на два числа, каждое из которых не превосходит 18 (согласно алгоритму, выполняется только поразрядное суммирование, а сумма любых двух цифр не превосходит 18).
Число 125 можно разбить на числа 12 и 5. Расположим их в порядке убывания, чтобы число получилось наибольшим. Сумма первой и второй цифры = 12, поставим на первое место самую большую цифру - 9, тогда вторая цифра 12 - 9 = 3. Сумма второй и третьей цифры - 5. Тогда третья цифра = 5 - 3 = 2.
Ответ: 932.
Задача 18
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом.
1) Строится двоичная запись числа N.
2) К этой записи дописываются справа ещё три разряда по следующему правилу:
Если N чётное, справа дописывается 101, а если N нечётное, справа дописывается 111. Например, запись 101 преобразуется в запись 101111;
Полученная таким образом запись (в ней на три разряда больше, чем в записи исходного числа N) является двоичной записью искомого числа R. Укажите максимальное число N, для которого результат работы алгоритма не превышает 328. В ответе это число запишите в десятичной системе.
Решение
Чтобы получить примерное значение N из R, разделим 328 на значение, равное системе счисления в степени количества добавляемых разрядов.
Система счисления: 2.
Количество добавляемых разрядов: 3.
328/8 равно 41.
Если N = 41, то его двоичная запись = 101001, дописываем 3 разряда, получаем: 101001111 (т.к. 41 - нечётное), переводим число в десятичную, получаем R = 335. Не подходит.
Возьмём меньшее число
Если N = 40, то его двоичная запись = 101000, дописываем 3 разряда, получаем: 101000101 (т.к. 40 - чётное), переводим число в десятичную, получаем R = 325. Подходит.
Ответ: 40.
Задача 19
Автомат получает на вход трёхзначное число. Из этого числа строится новое число по следующим правилам.
1. Вычисляются два числа: произведение первой и второй цифр и произведение второй и третьей цифр .
2. Полученные два числа записываются друг за другом в порядке убывания (без разделителей).
Пример. Исходное трёхзначное число: 875. Произведение первой и второй цифр: 56. Произведение второй и третьей цифр: 35. Результат: 5635.
Укажите наибольшее число, в результате обработки которого автомат выдаст число 216.
Решение
Заметим, что полученное в результате выполнения алгоритма число можно разбить на два числа, причём первое должно быть больше второго и каждое из которых не превосходит 81 (согласно алгоритму, выполняется только поразрядное перемножение, а произведение любых двух цифр не превосходит 81).
Число 216 можно разбить на числа 21 и 6. 21 можно разбить на произведение цифр лишь одним способом: 7 и 3. Тогда средняя цифра - 3, которая даст 6 при умножении на 2. Итого, получим 3 цифры: 7, 3, 2, из которых тройка должна стоять на втором месте
Ответ: 732.
Задача 20
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом.
1) Строится двоичная запись числа N.
2) К этой записи дописываются справа ещё три разряда по следующему правилу:
Если N чётное, справа дописывается 001, а если N нечётное, справа дописывается 100. Например, запись 100 преобразуется в запись 100001;
Полученная таким образом запись (в ней на три разряда больше, чем в записи исходного числа N) является двоичной записью искомого числа R. Укажите минимальное число R, которое может являться результатом работы алгоритма и превышает 120. В ответе это число запишите в десятичной системе.
Решение
Чтобы получить примерное значение N из R, разделим 120 на значение, равное системе счисления в степени количества добавляемых разрядов.
Система счисления: 2.
Количество добавляемых разрядов: 3.
120/8 примерно равно 14.
Если N = 14, то его двоичная запись = 1110, дописываем 3 разряда, получаем: 1110001 (т.к. 14 - чётное), переводим число в десятичную, получаем R = 113. Не подходит.
Возьмём большее число
Если N = 15, то его двоичная запись = 1111, дописываем 3 разряда, получаем: 1111100 (т.к. 15 - нечётное), переводим число в десятичную, получаем R = 124. Подходит.
Ответ: 124.
Рекомендуемые курсы подготовки
- 🔥 Изучишь одни из самых фундаментальных тем информатики
- 🔥 Научишься решать 6 задач формата ЕГЭ руками
- 🔥 Начнёшь свой путь в проге
- 🔥 Учёба на Турбо: познакомишься с преподавателями и личным кабинетом
Что тебя ждет?
- 8 вебинаров (1 веб в неделю по 1 часу)
- Тестовые Д/З после каждого занятия
- Конспекты и скрипты к урокам
- Доступ к личному кабинету
- Возможность отрабатывать задания ЕГЭ в любое время
- Чат с единомышленниками
- Поддержка препа 24/7
на бесплатном курсе Турбо ЕГЭ