看完不会?让 AI 一步步解给你看
Algebra · real student question

解方程 x³ − 245.711x² + 2.764156x + 0.115212 = 0。

Question

解关于 xx 的方程:

x3−245.711x2+2.764156x+0.115212=0x^{3}-245.711x^{2}+2.764156x+0.115212=0

Step-by-step solution

  1. 先用悬殊的系数猜出根的分布。 对 x3−245.711x2+2.764156x+0.115212=0x^{3}-245.711x^{2}+2.764156x+0.115212=0,三根之和是 245.711245.711,三根之积是 −0.115212-0.115212。这两件事要同时成立,就只能是一个根在 245.7245.7 附近,另外两个离零不到几百分之一 —— 所以应当把两种尺度分开处理,而不是去搬三次方程的一般求根公式。

  2. 丢掉 x3x^{3} 求两个小根。 如果 ∣x∣|x| 只有几百分之一,那么 x3x^{3} 是 10−510^{-5} 量级,与 245.711x2245.711x^{2} 相比完全可以忽略。丢掉它就只剩二次方程 245.711x2−2.764156x−0.115212=0,245.711x^{2}-2.764156x-0.115212=0, 它的判别式是 D=(−2.764156)2+4(245.711)(0.115212)=120.8759813203,D=10.9943613421.D=(-2.764156)^{2}+4(245.711)(0.115212)=120.8759813203,\qquad \sqrt{D}=10.9943613421. 再用求根公式得到 x≈−0.016747735和x≈0.027997357.x\approx -0.016747735\quad\text{和}\quad x\approx 0.027997357.

  3. 用一步牛顿迭代修正这两个根。 丢掉的 x3x^{3} 项只在小数点后第七位上影响每个根;对完整的三次方程做牛顿迭代 x↦x−f(x)f′(x)x\mapsto x-\dfrac{f(x)}{f'(x)},会收敛到 x=−0.016747308和x=0.027999354.x=-0.016747308\qquad\text{和}\qquad x=0.027999354. 与二次方程的估计相比,修正量只有 4.3×10−74.3\times 10^{-7} 和 2.0×10−62.0\times 10^{-6},这正是「丢掉 x3x^{3}」这一步所承诺的:被忽略的项是 10−510^{-5} 量级,而 245.711x2245.711x^{2} 项是 10−110^{-1} 量级。

  4. 大根用根之和来求,别用求根公式。 三根之和必须是 245.711245.711,所以 x大=245.711−(−0.016747308+0.027999354)=245.699747954.x_{\text{大}}=245.711-\left(-0.016747308+0.027999354\right)=245.699747954. 把这个值代进 f(x)=x3−245.711x2+2.764156x+0.115212f(x)=x^{3}-245.711x^{2}+2.764156x+0.115212,在十二位有效数字上结果都是零。

  5. 用韦达定理的两条关系一起验证。 三个根 −0.016747308-0.016747308、0.0279993540.027999354 和 245.699747954245.699747954 之和恰好是 245.711000000245.711000000,之积是 −0.115212-0.115212,与要求的 −c-c 吻合。这里真正管用的是乘积那一条:两个小根就算算错了,也仍可能满足和的关系,因为大根会自动把差额吸收掉 —— 只有乘积能把错误暴露出来。

  6. 写出解集。 x=−0.016747308,x=0.027999354,x=245.699747954.x=-0.016747308,\qquad x=0.027999354,\qquad x=245.699747954. 三个根都是实根,这与曲线的形状一致:它在零点稍下方穿过一次 x 轴,在零点稍上方穿过一次,还在远处的 245.7245.7 附近穿过一次。

Answer

x=−0.016747308,x=0.027999354,x=245.699747954x=-0.016747308,\qquad x=0.027999354,\qquad x=245.699747954

Need to solve a different problem like this? Open the solver →