Предмет: Информатика, автор: AnnaPankova2002

Язык желательно си, но можно любой. В целях улучшения математических навыков Незнайки, Знайка

предложил ему сыграть в игру. Знайка называет натуральное число, а

Незнайка должен найти минимальное число, большее данного, такое что

оно делиться на произведение своих цифр без остатка.

Например, если Знайка загадал число 210, то Незнайка должен дать

ответ 212, так как произведение цифр этого числа равно 2*1*2 = 4, 212

делится на 4 без остатка и это ближайшее число, большее загаданного.

(Число 211 не подходит, так как произведение цифр этого числа равно

2*1*1 = 2, а 211 не делится на 2 без остатка).

Формат ввода

На вход подаётся натуральное число n – число загаданное Знайкой

(1 ≤ n ≤ 1000).

Формат вывода

Вывести на экран одно число – ответ Незнайки.

Примеры

input output

210 212

Ответы

Автор ответа: Arkassssha
0

Код программы:

#include <stdio.h>

int main()

{

   int n, a, a1,aa, p;

   printf("Введите число: ");

   scanf("%d", &n);

   a = ++n;

   aa = a;

   while(1){

       a = aa;

       p = 1;

       while(a){

           a1 = a % 10;

           p *= a1;

           a = a / 10;

       }

       if (aa % p == 0){

       printf("Ответ: %d\n", aa);

       break;

       }

       ++aa;

   }

   return 0;

}

Похожие вопросы
Предмет: Алгебра, автор: alaaaaaaa
Предмет: Физика, автор: bear19