Помогите. Составить программу в Паскале: Составьте программу нахождения наименьшего...

0 голосов
28 просмотров

Помогите.

Составить программу в Паскале:

Составьте программу нахождения наименьшего наименьшего натурального n-значного числа X( X>=10), меньшего произведению своих цифр.


Информатика (552 баллов) | 28 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

Любое десятичное натуральное число N можно записать в следующей расширенной форме:
N=a_n\cdot10^{n}+a_{n-1}\cdot10^{n-1}+...+a_1\cdot 10^1+a_0
Тогда искомое условие записывается в виде
a_n\cdot10^{n}+a_{n-1}\cdot10^{n-1}+...+a_1\cdot 10^1+a_0 \ < \ a_n\cdot a_{n-1}\cdot ...\cdot a_1\cdot a_0 \ ; \\ a_n\cdot10^{n} \ < \ a_n\cdot a_{n-1}\cdot ...\cdot a_1\cdot a_0-(a_{n-1}\cdot10^{n-1}+...+a_1\cdot 10^1+a_0)
Разделим обе части неравенства на a_n:
\displaystyle 10^{n} \ < \ a_{n-1}\cdot ...\cdot a_1\cdot a_0-\frac{(a_{n-1}\cdot10^{n-1}+...+a_1\cdot 10^1+a_0)}{a_n} \ ;
Очевидно, что
image \ a_{n-1}\cdot a_{n-2}\cdot ...\cdot a_1\cdot a_0, \quad a_i\in[1;9]" alt="10^{n} \ > \ a_{n-1}\cdot a_{n-2}\cdot ...\cdot a_1\cdot a_0, \quad a_i\in[1;9]" align="absmiddle" class="latex-formula">
А вычитание из правой части величины
\displaystyle \frac{(a_{n-1}\cdot10^{n-1}+...+a_1\cdot 10^1+a_0)}{a_n}
только усиливает неравенство.
Вывод: не существует натуральных чисел, меньших произведения своих цифр.
Посему и программу писать бессмысленно...

(142k баллов)