Все делители заданного числа можно найти, если разложить число на простые множители, а после найти все комбинации перемножения множителей между собой.
Распишем алгоритм:
Заданное число разложим на простые множители.
Выпишем каждый из множителей один раз (если есть, к примеру, несколько двоек, то запишем её только один раз).
Перемножим множитель на множитель во всех возможных комбинациях (например, если их всего три, то перемножим их попарно — это будет уже три дополнительных делителя числа. Далее всё, что нам остаётся, это произведение каких-то двух простых множителей умножить на третий простой множитель — так получим четвёртый делитель).
Также надо не забыть, что единица также является делителем.
В качестве примера рассмотрим нахождение всех делителей числа 60. Для этого сперва разложим это число на простые множители:
Получились следующие простые множители:
60 = 2 * 2 * 3 * 5 = 2² * 3 * 5.
Без повторов простые множители числа 60 — это 2, 3 и 5.
Далее найдём всевозможные произведения:
2 * 2 = 4;
2 * 3 = 6;
2 * 5 = 10;
3 * 5 = 15;
2 * 2 * 3 = 12;
2 * 2 * 5 = 20;
2 * 3 * 5 = 30;
2 * 2 * 3 * 5 = 60.
Теперь добавим единицу и запишем все делители числа 60:
1, 2, 3, 4, 5, 6, 10, 12, 15, 20, 30 и 60.