next up previous
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日