Posted in: Science, Study

一元三次方程

前言

在小学时,我学了等号一边有未知数,另一边没有未知数的方程,例如:x+6=10

在初中一年级时,我学了等号两边都可能有未知数的一元一次方程,例如:x+6=2x+4

因为这种方程需要通过移项来解决。移项就要涉及正负号,而负数是到了初一才学的,所以先学负数再学一元一次方程。

在初中二年级时,我学了一元二次方程,例如:x23x+2=0

因为这种方程需要通过开平方来解决。开平方就要涉及无理数(实数),而无理数(实数)是到了初二才学的,所以先学实数再学一元二次方程。

那么接下来该学一元三次方程了吧?比如:x321x+20=0

高中数学?大学数学?然而奇怪的是,我的数学课止步于此,并没有在之后的任何数学课上学到过一元三次方程。原因呢🧐?今天就来水一篇。

准备知识

一元二次方程的求根公式

这个初中数学内容应该不难,家有鸡娃的估计还得亲自下场辅导呢!

同时还知道,如果 Δ=b24ac<0 时,方程 ax2+bx+c=0 (a0) 就没有实数解,因为负数不能开平方。

韦达定理

这个初中数学内容也是不难的,但奇怪的是现在的数学教材却把它作为选学内容了,想当年这可是考试的重点😵‍💫

虚数和复数

在高中数学的最后一章(现在的教材好像往前挪了)突然说要对负数开平方,原因不明,然后就没有然后了,就是为了好玩吗?😄大学数学也没有这个内容。

i2=1; i=1

假设我当了国家主席后下令:虚数是不存在的东西,是万恶的资本主义🇺🇸编出来欺骗我们的。实数能解决一切问题,1 就是没有意义的。这样子行不行呢?下面你就会发现,这其实是不行的。

当然咱们的主席说在社会主义数学里,13+15=28。所以如果我说 1 有意义,就是反动学术权威,就会被抓起来,那肯定是不敢说了。好在现在已经润了,就可以说说。

一个简单的一元三次方程

现在就以x321x+20=0为例,先说答案,它有三个实数解,而且都是整数:x1=1; x2=4; x3=5(代入进去一下子就能验证)

下面假设伟大领袖下令:数学中只能出现实数,实数就是全部的数。

卡丹公式的应用

一元三次方程有求根公式,因为是意大利人 Cardano 发现的,所以又叫卡丹公式。公式写起来比较复杂,所以我们用具体的数字来代替字母,这样看起来比较舒服😌。

首先 x 一定是实数(因为伟大领袖说了,而且我们已经知道了答案 x = 1 或 4 或 -5,属于整数,是实数里面最根正苗红的那一派),肯定能写成两个实数( u 和 v )的和:x=u+v

那么,方程就变成 (u+v)321(u+v)+20=0

而如果直接把(u+v)3展开,得:(u+v)3=u3+3u2v+3uv2+v3,也就是(u+v)33uv(u+v)(u3+v3)=0

并列起来看看吧:

{(u+v)3 21(u+v)+ 20 =0(u+v)33uv(u+v)(u3+v3)=0

一个大胆的假设

看了上面两个等式,感觉:确实很整齐而且漂亮,只是好像变复杂了(一个未知数 x 变成了两个未知数 u 和 v)。但是可以来个大胆的假设,如果 u 和 v 满足:

{u3+v3=20uv=7

那么 u 和 v 就是解。

把等式 uv=7 两边取立方,得到 u3v3=343,即:

{u3+v3=20u3v3=343

变身韦达定理

一下子能看出来上面这个式子就是韦达定理,u3 和 v3 是如下一元二次方程的两个解:

t2+20t+343=0

死路

可是问题来了,这个一元二次方程里:

=2024×343=972<0

所以 t 无解,因此 u3 和 v3 无解,因此 u 和 v 无解,因此 x=u+v 无解。可是我们已经知道了 x = 1 或 4 或 -5。 死路了?问题出在哪里?

强行给负数开平方试试

此时就需要有革命家来反驳主席:在式子x=u+v中,就算 x 是一个实数(例如 1、4 或 -5),u 和 v 也有可能不是实数。一定存在着实数以外的数(虚数)。

下面我们强行给负数开平方,得到:

{u3=20+Δ2=20+9722=10+15.58841v3=20Δ2=209722=1015.58841

不要担心算错,验证一下,确实满足 {u3+v3=20u3v3=343

一个数的立方根

既然知道了 u3 和 v3,那么自然就可以计算 x=u+v了:

x=u+v=10+15.588413+1015.588413

且慢!开头说了, x = 1 或 4 或 -5,这是千真万确的事实,怎么现在出来个这么样的鬼东西?现在只得到一个 x 的解,而且还这么复杂。

再来个大胆的假设

我们不妨再来个大胆的假设:一个数开立方后不是只有一个解,而是有三个解。例如我们都知道83=2,那么还有别的解吗?有的,另外两个解分别是1+313。同理,此处u和v各有三个解,分别是:

u=10+15.588413={u1=2.0057+1.73721u2=2.5183+0.75151u3=0.51262.48871

v=1015.588413={v1=2.00571.73721v2=2.51830.75151v3=0.5126+2.48871

虚数消掉了

惊讶地发现,两个一相加,虚数消掉了:

x=u+v={u1+v1=2.0057+2.00574u2+v2=2.51832.51835u3+v3=0.5126+0.51261

所以现在开头的疑问已经解决了:

  • 为什么要对负数开平方:负数不开平方的话,一元三次方程无法解,即使三个根全部都是实数。
  • 为什么数学课里没有一元三次方程:因为需要对一个数开立方得到三个根,但是这个过程需要借助一个选学内容(复数的三角形式),所以也没法学。

PS:本页的数学公式是用在线工具生成的MathML,再复制过来的。因此不需要用到非常笨重的 JS 库。非常适合我这种轻度用户。不过需要小心的是,这个工具在生成左大括号(也就是方程组的联立符号)时,用的是老版的<mfenced>:

<mfenced open="{" close="">
</mfenced>

这个元素只在 Safari 浏览器里面支持,其他都不支持。因此需要自己手动换成:

<mrow><mo>{</mo>
</mrow>

Comments (6) on "一元三次方程"

  1. Google Chrome 128.0.0.0 Windows 10 x64 Edition

    😀 不如瞪眼法,注意到…,所以… 😆
    不求甚解的话,用牛顿迭代法算近似解更快

  2. Google Chrome 128.0.0.0 Mac OS X  10.15.7

    当时学这里的时候老师讲了一次,然后就一笔带过了,后期也没有再提(因为考试不考)。没想到多年后可以用这种方式再次温习一次,感谢老师,哈哈

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注