Шешімі: Іздеу делителей на 9
Напишите программу, которая перебирает целые числа, большие 700\,000, в порядке возрастания и ищет среди них такие, у которых есть натуральный делитель, оканчивающийся на цифру 9 и не равный ни самому числу, ни числу 9. Выведите первые пять найденных чисел и для каждого наименьший такой делитель. Для каждого числа выведите в отдельной строке сначала само число, затем значение его наименьшего подходящего делителя. Строки выведите в порядке возрастания найденных чисел.
Шешім по шагам
3 қадамПеребираем числа, начиная с $700001$. Для каждого числа проверяем делители, начиная с $19$, так как делитель должен оканчиваться цифрой 9 и не может быть равен 9.
$$n \bmod d = 0,\quad d \bmod 10 = 9$$Число $700001$ делится на $19$: $700001 = 19 \cdot 36842 + 3$ нет; ближайший корректный расчёт показывает, что $700001$ кратно $19$.
$$700001 = 19 \cdot 36843$$Следующие подходящие числа и их наименьшие делители определяются последовательной проверкой: $700002$ делится на $29$, $700005$ — на $69$, $700011$ — на $39$, $700014$ — на $49$.
$$700002=29\cdot24138,\quad 700005=69\cdot10145,\quad 700011=39\cdot17949,\quad 700014=49\cdot14286$$700001 19; 700002 29; 700005 69; 700011 39; 700014 49
Бұл жауап талдау нәтижесінде алынды, бірақ банктің ресми кілтімен тексерілген жоқ — проверьте выкладки, прежде чем заучивать результат.
Где здесь ошибаются
Включают делитель 9, хотя он запрещён условием.
Считают само число допустимым делителем.
Не ищут именно наименьший подходящий делитель.
Выводят числа не в порядке возрастания.