С рекурсивной подпрограммы решить задачу на C#
Дано натуральное число N. Найти и вывести все числа в интервале от 1 до N-1, у которых произведение всех цифр совпадает с суммой цифр данного числа. Если таких чисел нет, то вывести слово "нет". Пример N=44. Числа: 18, 24.
1) Шрифт 1
2) Шрифт 2
3) Шрифт 1; полужирное
4) Шрифт 2; полужирное
5) Шрифт 1; полужирный; курсив
6) Шрифт 2; полужирный; курсив
7) Шрифт 1; полужирный; курсив; подчеркнутое
8) Шрифт 2; полужирный; курсив; подчеркнутое
9) Шрифт 1; курсив
10) Шрифт 2; курсив
11) Шрифт 1; курсив; подчеркнутое
12) Шрифт 2; курсив; подчеркнутое
13) Шрифт 1; подчеркнутое
14) Шрифт 2; подчеркнутое
15) Шрифт 1; полужирный; подчеркнутое
16) Шрифт 2; полужирный; подчеркнутое
За каждую итерацию цикла n возрастает на 8. Нам нужно минимум 125 итераций, чтоб получить n > 1000, потому что 4 + 8*125 > 1000, а 4 + 8*124 < 1000. Можно и больше 125 итераций, об этом дальше
За каждую итерацию цикла s растёт на 5, пока не превысит 400. Нам нужно как минимум 125 итераций, как мы выяснили, а для этого стартовое значение s должно быть больше чем
400 - 5*125 = 400 - 625 = -225,
но больше или равно
400 - 5*124 = 400 - 620 = -220.
Ну и на отрезке (-225; -220] максимум найти несложно.
Если число итераций N будет больше 125, то больше будет разница 400 - 5*N , а значит меньше будет стартовое значение S, что нас не устраивает.
ответ: -220