2013-09-03 4 views
1

Прежде всего, мне нужно реализовать приложение JAVA, которое получит уравнение (полиномиальное уравнение), и мое программное обеспечение вычислит его корни. Так мои цели:Как я могу анализировать полиномиальные выражения для вычисления их корней?

  • Получите уравнение от входа (пример: х^3 -3x^2 + 2x +1)
  • Анализировать это уравнение, так что я знаю его коэффициенты и степени его (коэффициенты 1, - 3, +2, +1, degree: 3, 2, 1, 0)
  • Затем мне нужно найти интервал для вычисления его корней (например, метод Больцано), которые находят интервал путем изменения сигнала в результате уравнения: F (1) = 2, F (2) = -3, то есть в интервале интервал 2 и 3 будет одним корнем) - его необходимо иметь один корень только за интервал.
  • После разбора я буду использовать метод Secant (или Newton Raphson) для поиска корней.

Это мои цели. Если есть что-то, с чем вы можете помочь, там будет здорово.

Заранее спасибо.

ответ

1

Вы можете построить рекурсивный спуск синтаксический анализатор. См. https://stackoverflow.com/a/2336769/120163.

Однако вы действительно хотите знать степень полинома и коэффициенты. Почему бы просто не прочитать список значений коэффициентов, а длина списка дала вам степень полинома?

Смежные вопросы