Обычно разложение на множители делается с помощью нахождения корней. Есть полезная теорема: если у нас есть многочлен с целыми коэффициентами, и

- его рациональный корень, представленный в виде неприводимой дроби, то

- делитель свободного члена, а

- делитель коэффициента при старшей степени.
Универсального алгоритма разложения не существует.
Справедливости ради, надо сказать, что алгоритмы существуют, они даже полиномиальны по степени многочлена. Но они слабо подходят для "ручной" работы