【发布时间】:2014-03-14 19:58:01
【问题描述】:
我应该在matlab的代码中输入什么条件,以便用这些公式得到二次的精确解:
x1=(-2*c)/(b+sqrt(b^2-4*a*c))
x2=(-2*c)/(b-sqrt(b^2-4*a*c))
直接实现这些公式在某些情况下我没有得到正确的解决方案,例如x^2-1000001x+1
非常感谢您的帮助
【问题讨论】:
-
roots 会给你一个更好的答案。它使用基于矩阵的方法。
-
如果你不想完全使用符号(你的标签表明你对数值方法感兴趣),你可以试试variable precision arithmetic。
-
我对您用于根的公式表示怀疑。不应该是
(-b+sqrt(b^2-4ac)) / 2a和(-b-sqrt(b^2-4ac)) / 2a -
是的,但是我想分析一下matlab造成的经典公式之间的小数差异
标签: algorithm matlab equation numerical-methods numerical-analysis