5.03 Действия над цифрами числа
Ошибка.
Попробуйте повторить позже
Автомат получает на вход четырехзначное число. По этому числу строится новое число по следующим правилам.
- Складываются первая и третья, а также вторая и четвертая цифры исходного числа.
- Полученные два числа записываются друг за другом в порядке возрастания (без разделителей).
Пример. Исходное число: . Суммы:
;
. Результат:
.
Укажите наименьшее число, в результате обработки которого автомат выдаст число .
Решение 1
Максимальное значение, которое можно получить при сложении двух цифр, — . Поэтому
разобьем результат работы алгоритма на числа, не превышающие
:
|
.
Теперь подберем наиболее выгодное для нас разложение числа . Наша задача подобрать такое
разложение, чтобы одно из чисел в сумме было минимальным:
Разложения, в которых участвуют числа, больше , нам не подходят.
Значит, — самое выгодное для нас разложение числа
. В остальных случаях мы не
сможем получить минимальное число.
Теперь подберем наиболее выгодное для нас разложение числа . Наша задача подобрать такое
разложение, чтобы одно из чисел в сумме было минимальным:
— самое выгодное для нас разложение числа
. В остальных случаях мы не сможем
получить минимальное число.
Поскольку в результате работы алгоритма нам необходимо получить , исходя из разложений,
получим ответ —
.
Проверим его: , запишем результаты в порядке возрастания:
.
Решение 2
В этой задаче нам необходимо найти наименьшее четырёхзначное число, при обработке которого автомат выдаёт результат 717. Сначала внимательно переводим условие задачи на язык Python. Нам нужно перебрать все целые числа от 1000 до 9999 включительно, потому что именно такие числа являются четырёхзначными. Для этого используем цикл for. Каждое число i внутри цикла мы сразу преобразуем в строку с помощью str(i), чтобы можно было легко обращаться к отдельным цифрам по индексам: a[0] — первая цифра, a[1] — вторая, a[2] — третья, a[3] — четвёртая. Далее, согласно условию, мы складываем первую и третью цифры (int(a[0]) + int(a[2])) и сохраняем результат в переменной x1, а вторую и четвёртую (int(a[1]) + int(a[3])) — в переменной x2. После этого нам нужно записать полученные суммы друг за другом в порядке возрастания без пробелов и разделителей. Для этого мы проверяем, какая из сумм меньше, и в зависимости от этого формируем строку x, где сначала идёт меньшая сумма, затем большая. Когда строка готова, мы сравниваем её с заданным результатом ’717’. Если совпадение найдено, значит текущее число i подходит. Поскольку числа перебираются в порядке возрастания, первое найденное сразу будет наименьшим, и мы его выводим на экран с помощью print. После этого с помощью break прерываем выполнение цикла, чтобы не проверять лишние значения.
for i in range(1000, 10000): # Перебираем все четырёхзначные числа от 1000 до 9999 включительно a = str(i) # Преобразуем число в строку для доступа к отдельным цифрам x1 = int(a[0]) + int(a[2]) # Складываем первую и третью цифры числа x2 = int(a[1]) + int(a[3]) # Складываем вторую и четвёртую цифры числа if x1 > x2: # Если первая сумма больше второй x = str(x2) + str(x1) # Формируем строку: сначала меньшая сумма, затем большая else: # Иначе, если первая сумма меньше или равна второй x = str(x1) + str(x2) # Формируем строку: сначала x1, затем x2 if x == "717": # Проверяем, совпадает ли результат с заданным "717" print(i) # Если совпадает, выводим найденное число break # Прерываем цикл, так как нашли наименьшее подходящее число
Специальные программы

Программа
лояльности v2.0
Приглашай друзей в Школково и получай вознаграждение до 10%!

Крути рулетку
и выигрывай призы!
Крути рулетку и покупай курсы со скидкой, которая привязывается к вашему аккаунту.

Бесплатное онлайн-обучение
Для школьников из приграничных территорий России, проживающих в ДНР, ЛНР, Херсонской, Запорожской, Белгородской, Курской, Брянской областях и Крыму.

Налоговые вычеты
Узнай, как получить налоговый вычет при оплате обучения в «Школково».

Специальное предложение
для учителей
Бесплатный доступ к любому курсу подготовки к ЕГЭ, ОГЭ и олимпиадам от «Школково». Мы с вами делаем общее и важное дело, а потому для нас очень значимо быть чем-то полезными для учителей по всей России!

Вернём деньги за курс
за твою сотку на ЕГЭ
Сдать экзамен на сотку и получить обратно деньги за подготовку теперь вполне реально!