Формальное исполнение простого алгоритма, записанного на естественном языке, или умение создавать линейный алгоритм для формального исполнителя с ограниченным набором команд, или умение восстанавливать исходные данные линейного алгоритма по результатам его работы · 26 заданий
- Задание №5№5
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом: 1) Строится двоичная запись числа N. 2) Далее…
Анализ алгоритмов и исполнители
- Задание №5№5
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом. 1) Строится двоичная запись числа N. 2) Далее…
Анализ алгоритмов и исполнители
- Задание №5№5
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом. 1) Строится двоичная запись числа N. 2) К это…
Анализ алгоритмов и исполнители
- Задание №5№5
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом: 1) Строится двоичная запись числа N. 2) Кажды…
Анализ алгоритмов и исполнители
- Задание №5№5
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом: 1) Строится двоичная запись числа N. 2) Кажды…
Анализ алгоритмов и исполнители
- Задание №5№5
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом: 1) Из числа N вычитается остаток от деления N…
Анализ алгоритмов и исполнители
- Задание №5№5
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом: 1) Из числа N вычитается остаток от деления N…
Анализ алгоритмов и исполнители
- Задание №5№5
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом: 1) Строится двоичная запись числа N. 2) Далее…
Анализ алгоритмов и исполнители
- Задание №5№5
Автомат получает на вход трёхзначное число. По этому числу строится новое число по следующим правилам: 1) Вычисляются суммы квадратов первой и второй,…
Анализ алгоритмов и исполнители
- Задание №5№5
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом. 1) Строится четверичная запись числа N. 2) Да…
Анализ алгоритмов и исполнители
- Задание №5№5
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом. 1) Строится четверичная запись числа N. 2) Да…
Анализ алгоритмов и исполнители
- Задание №5№5
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом. 1) Строится четверичная запись числа N. 2) Да…
Анализ алгоритмов и исполнители
Автомат получает на вход трёхзначное число. По этому числу строится новое число по следующим правилам.
1) Перемножаются все цифры исходного числа.
2) Суммируются все цифры исходного числа.
3) Полученные два числа записываются друг за другом в порядке невозрастания (без разделителей).
Пример. Исходное число: 621. Произведение цифр: 6⋅2⋅1=12; сумма цифр: 6+2+1=9. Результат: 129.
Укажите наибольшее число, при обработке которого автомат выдаст число 33621.
Правильный ответ
876
Пояснение
Решение:
Автомат приписывает друг к другу произведение цифр P и сумму цифр S, причём первым записывается большее из этих чисел. Значит, строку 33621 надо разрезать на две части так, чтобы первая часть была не меньше второй.
Сумма трёх цифр не превосходит 9+9+9=27, поэтому часть, отвечающая за сумму, состоит не более чем из двух цифр. Разбираем варианты разреза:
- «3» и «3621», «33» и «621» — не годятся: первое число меньше второго, порядок невозрастания нарушен;
- «3362» и «1» — тогда одно из чисел равно 1. Сумма цифр трёхзначного числа равна 1 только у числа 100, но произведение его цифр равно 0, а не 3362. Произведение цифр равно 1 только у числа 111, но сумма его цифр равна 3, а не 3362. Не подходит;
- «336» и «21» — подходит: 336≥21, а суммой цифр число 336 быть не может, поэтому P=336 и S=21.
Ищем цифры a,b,c, для которых a⋅b⋅c=336 и a+b+c=21. Разложим на множители: 336=24⋅3⋅7. Множитель 7 не может «разойтись» между цифрами, поэтому одна из цифр равна 7, а две другие дают в произведении 336:7=48. Единственное разложение числа 48 на два множителя-цифры — это 6⋅8. Проверяем сумму: 6+7+8=21 — верно.
Значит, цифры искомого числа — 6, 7 и 8; наибольшее число из этих цифр — 876. Проверка программой:
for n in range(999, 99, -1):
a, b, c = int(str(n)[0]), int(str(n)[1]), int(str(n)[2])
p, s = a * b * c, a + b + c
x, y = max(p, s), min(p, s)
if str(x) + str(y) == '33621':
print(n)
break
Программа печатает 876.
Ответ: 876