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