Не нужно его подбирать, я об этом и написал. Уравнение четвертой степени решается аналитически методом Феррари. В процессе решения возникает уравнение третьей степени, которое решается методом Кардано.
Советую прочитать статью по ссылке выше, там есть готовый код для Maxima.
проще всего использовать sympy. Определяем нужные символы и пишем что-то типа
sol = solve(2*a**4-(2*k-2)*a**3-(k-2)*a**2+2*a+1, a)
если k определено как число, то оно вернет просто массив значений корней. Если как символ, то будет массив функций, которые можно вычислять для конкретных k.
Напиши матрицу, для которой этот многочлен является характеристическим (см. любой хороший справочник по линейной алгебре ) а потом найди ее собственные числа, сразу все. Функция для вычисления собственных чисел есть в любой нормальной системе или соотв. библиотеке для почти любого языка.
Йопта, в любом вменяемом пакете это есть, и даже во многих невминяемых тоже есть. Есть примочки для фортрана, матлаба, R, питона, даже си и наверное даже для жава скрипта есть. Можешь взять книжку по выч матам, и закодить сам на любимом говноязыке, но такое уже давно самому кодить не нужно.