Julia 复数和有理数

简介: 在 Julia 中,预定义的复数和有理数类型支持数学运算。复数形式为 `a+bi`,其中 `i` 是虚数单位,`im` 是其全局常量。例如,`1+2im` 表示一个复数。可以进行加减乘除和幂运算,如 `(1+2im)*(2-3im)`,并支持指数为复数的情况。同样,有理数通过分数形式表示,提供方便的算术操作。

Julia 复数和有理数

本章节我们主要要来学习 Julia 的复数和有理数。

Julia 语言包含了预定义的复数和有理数类型,并且支持它们的各种标准数学运算和初等函数。

复数
复数,为实数的延伸,它使任一多项式方程都有根。

我们把形如 z=a+bi(a、b均为实数)的数称为复数。其中,a 称为实部,b 称为虚部,i 称为虚数单位,它有着性质。当 z 的虚部 b=0 时,则 z 为实数;当 z 的虚部 b≠0 时,实部 a=0 时,常称 z 为纯虚数。

全局常量 im 被绑定到复数 i,表示 -1 的主平方根。

由于 Julia 允许数值字面量作为数值字面量系数,这种绑定就足以为复数提供很方便的语法,类似于传统的数学记法:

实例
julia> 1+2im
1 + 2im
我们也可以对复数进行各种算术操作:

实例
julia> (1 + 2im)*(2 - 3im)
8 + 1im

julia> (1 + 2im)/(1 - 2im)
-0.6 + 0.8im

julia> (1 + 2im) + (1 - 2im)
2 + 0im

julia> (-3 + 2im) - (5 - 1im)
-8 + 3im

julia> (-1 + 2im)^2
-3 - 4im

julia> (-1 + 2im)^2.5
2.729624464784009 - 6.9606644595719im

julia> (-1 + 2im)^(1 + 1im)
-0.27910381075826657 + 0.08708053414102428im

julia> 3(2 - 5im)
6 - 15im

julia> 3(2 - 5im)^2
-63 - 60im

julia> 3(2 - 5im)^-1.0
0.20689655172413796 + 0.5172413793103449im

相关文章
|
1月前
复数相加
复数相加。
42 5
|
6月前
537. 复数乘法
537. 复数乘法
Julia 复数和有理数
在 Julia 中,预定义的复数和有理数类型支持多种数学运算。复数以 `a+bi` 形式表示,其中 `a` 是实部,`b` 是虚部,`i` 是虚数单位。全局常量 `im` 等于 `-1` 的平方根,简化了复数的书写。例如,`1+2im` 是一个复数。可以进行加、减、乘、除和幂运算,如 `(1 + 2im)^2.5` 结果是 `-3 - 4im`。有理数未在此摘要中提及。
|
6月前
|
C语言
C语言-----计算两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同?
C语言-----计算两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同?
|
6月前
|
BI
1051 复数乘法 (15 分)
1051 复数乘法 (15 分)
|
7月前
|
存储 安全 程序员
C/C++中的整数乘法运算与汇编指令MUL和IMUL
C/C++中的整数乘法运算与汇编指令MUL和IMUL
165 0
|
7月前
|
C语言
[C语言][题]两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同。
[C语言][题]两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同。
51 1
|
7月前
|
存储 C++
[C++/PTA] 矩阵的乘法运算
[C++/PTA] 矩阵的乘法运算
156 0
华为机试HJ57:高精度整数加法
华为机试HJ57:高精度整数加法
|
算法 Python
如何将算法翻译成RTL(二):带小数的加减法实现
如何将算法翻译成RTL(二):带小数的加减法实现
185 0