Next: 8.2 シンボル
Up: 8.1 数
Previous: 8.1.3 浮動小数点数(floating-point number)
8.1.4 複素数(complex number)
複素数のようにベクタで表される数も簡単に使えるところが
Lispの便利な特徴の一つです.そして,そのデータを扱う
演算関数もその複素数を受け付けるようにできているため,
数の違いにより演算関数を別に用意するということを
しなくてすむようになっています.
complexで複数を作り,realpart,imagpartで実数,虚数部をそれぞれとってき
ます.
<cl> (sqrt -1)
#c(0.0 1.0)
<cl> (* (sqrt -1) 2)
#c(0.0 2.0)
<cl> #c(0 1)
#c(0 1)
<cl> (* #c(0 1) 2)
#c(0 2)
<cl> (* (* #c(0 1) 2) #c(0 1))
-2
<cl> (* (sqrt -1) (sqrt -1))
#c(-1.0 0.0)
<cl> (= -1 #c(-1.0 0))
T
<cl> (= -1 (* (sqrt -1) (sqrt -1)))
T
<cl> (* (complex 1 2) (complex 2 3.0))
#c(-4.0 7.0)
このように,=は演算で与えられた数の型にかかわらず
複素数の範囲まで考慮した等しさを調べます.
generated through LaTeX2HTML. M.Inaba 平成18年5月7日