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

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

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

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

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

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

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

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

Формат ввода

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

(1 ≤ n ≤ 1000).

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

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

Примеры

input output

210 212

jorik9 jorik9    2   04.01.2021 21:19    52

Ответы
veip0 veip0  12.02.2021 22:13

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

#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;

}

ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика