Пусть исходное число будет abc, где a - первая цифра, b - вторая, c - третья.
b,c - цифры => они принимают целые значения от 0 до 9. Так как число трехзначное, то a не может быть равно 0 => a принимает целые значения от 1 до 9.
Произведение двух цифр не превосходит 9*9=81.
Ищем произведения цифр в числе 123:
1 и 23 - неверно(1=1*1, но 23=1*c=> c=23>9)
12 и 3 - верно(1*3 и 3*4, записаны в порядке убывания)
Нам нужно найти наименьшее число, значит значения a и b как первых цифр числа должны быть минимальны.
По условию:
a*b=3
b*c=12
Подбираем значения a,b и c:
a=1; b=3; c=12/3=4 - верно, число 134
a=3; b=1; c=12/1=12 - неверно
В итоге, получили, что число 134 - минимальное.
ответ: 134
Поделитесь своими знаниями, ответьте на вопрос:
Описать класс для работы с одномерным массивом: - конструктор, заполняющий заданное количество элементов массива заданным значением; - конструктор, заполняющий заданное в его параметре количество элементов массива значениями членов ряда Тейлора для функции cosh x для заданного х. - свойство, доступное только для чтения, для получения количества элементов массива, больших 0, 8; - метод, вычисляющий сумму модулей элементов, расположенных после последнего элемента, меньшего по модулю 0, 0001. Вывод на экран выполнять только в методе Main класса-клиента. Программа должна адекватно реагировать на ошибки пользователя и различные варианты исходных данных. Все тестовые данные предъявить преподавателю.
Следующий код на Python это подтверждает:
def change_3dig():
n = 100
while n < 1000:
digits = (n // 100,
n % 100 // 10,
n % 10)
sums = (digits[0] + digits[1],
digits[1] + digits[2])
res = str(max(sums)) + \
str(min(sums))
yield (n, int(res))
n += 1
ans = [(n1, n2) for n1, n2 in change_3dig() if n2 == 1412]
print(min(ans))
Вывод:
(395, 1412)