Как упростить и отобразить уравнение с помощью C? - PullRequest
3 голосов
/ 08 февраля 2011

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

3 7 9
8 6 2
1 8 6

теперь, если предположить, что параметр, скажем, "b"; Мой следующий шаг - сделать это;

3-b 7   9
8   6-b 2
1   8   6-b

до тех пор, пока я не могу отобразить, выполнив это:

printf("%d - %c ", a[i][j],98);

но тогда как мне найти этот определитель матрицы отсюда ?? мое окончательное уравнение должно иметь форму, подобную

b^3 + 3b^2 - 4b +5 =0

и все это упрощение должно быть сделано в программе. Можно ли это сделать в C? Если нет, есть ли другой способ или язык, который делает это упрощение возможным? Я не хочу просто отображать персонажа, я хочу, чтобы он участвовал в расчете и остался без изменений в окончательном ответе Спасибо.

1 Ответ

6 голосов
/ 08 февраля 2011

Звучит как символическое вычисление .Это легко реализуется в MATLAB, если у вас есть Symbolic Math toolbox или GNU Octave (как описано в этом учебнике ), который доступен бесплатно.

Google рекомендует GiNaC для C ++.Дальнейшее прибегание к помощи может что-то найти для C.

...