从小学我们就知道 i=√−1。
复数一般写作 a+bi
复数四则运算
- 加法:
(a+bi)+(c+di)=(a+c)+(b+d)i
减法就是取个相反数。
-
乘法:
(a+bi)×(c+di)
=ac+(ad+bc)i+bd×i2
=(ac−bd)+(ad+bc)i
-
共轭复数
a+bi 的共轭复数是 a−bi,它们相乘一定是有理数。
-
除法:(没什么用)
a+bic+di=(ac+bd)+(bc−ad)i(c+di)(c−di)=ac+bdc2+d2+bc−adc2+d2i
复数表示
每个复数都写作 a+bi ,所以我们可以在一个直角坐标系表示所有复数。
举个例子,(x,y) 表示的就是 x+yi。
复数相乘
我们定义复数 x=a+bi 的模长为 |x| ,就是 (a,b) 距离远点的距离。
我们定义幅角表示当前点和原点连线后,与第一象限的直线所形成的的夹角。
复数相乘就是模长相乘,幅角相加。
这个证明会在最后。
单位根
对于 xn=1 的解集构成单位根。
我们定义 ωkn 表示第 k 个 n 次单位根。
我们看看单位根怎么求。
由于模长相乘的原因,我们希望最后得到的数模长为 1,幅度为 0。
所以我们希望对于一个 x,xn=1,还需要 x 是正实数。这不很明显只有一个解 x=1。
所以 ∀ωkn,它们模长都是 1。
所以它们都在单位圆上(和三角函数那个一个意思)。
然后接下来就是幅角的问题了。
知道规律后,我们希望找到一个角度,从幅度为 0 逆时针转 n 次后回到幅度为 0。
那么最小的角度就是 360∘n。
所以,我们把单位圆的圆周 n 等分,每一份都可以取作单位根。
所以我们单根怎么求就出来了。然后右转三角函数。
单位根的性质
ωkn=−ωk+n/2n(n 是偶数)
ω0n=1
ωn/2n=−1
ωkn=(ω1n)k
ωjn×ωkn=ωj+kn
ωpkpn=ωkn
三角函数
补数学了。
c++ 用的是弧度制,所以角度要转弧度。
- cos(x),tan(x),sin(x) 没有变化,给入弧度,给出三角函数值。
- acos(x),atan(x),asin(x) 给入三角函数的值,给出弧度。
所以 π 的求法就很简单了。我们知道 cosπ=−1,所以 π=acos(−1)。
复数运算的证明
我们考虑三个点 :(a,b),(c,d),(ac−bd,ad+bc)
D(a,b)=a2+b2,D(c,d)=c2+d2,D(ac−bd,ad+bc)=a2c2+b2d2+a2d2+b2c2
所以模长相乘得证。
然后我们这样看:
tanθ1=ba,tanθ2=dc
tan(θ1+θ2)=tanθ1+tanθ21−tanθ1tanθ2=ba+dc1−bdac=ad+bcac−bd=tanθ3
得证。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)