seclan のほえほえルーム

| |

・プログラミング言語 C の新機能 Part XLIV: COMPLEX#2: 複素数に関する四則演算 (2000/02/14 [])
 複素数に関する四則演算について以下に示します。ただし、実数型とあるのは、float, double, long double 型のことを指しています。また、灰色の部分の計算を行おうとすると、例外が発生するかも知れません。ただし、complex.h を include して #pragma STDC CX_LIMITED_RANGE を on にすると灰色の部分の例外が発生しなくなります。デフォルトは off なので例外が発生するようになっています。
 ...と仕様で言っているのではないかと...。

足し算/引き算
±実数型
c
_Imaginary型
di
_Complex型
c+di
実数型
a
実数型
a±c
_Complex型
a±di
_Complex型
(a±c)±di
_Imaginary型
bi
_Complex型
±c+bi
_Imaginary型
(b±d)i
_Complex型
±c+(b±d)i
_Complex型
a+bi
_Complex型
(a±c)+bi
_Complex型
a+(b±d)i
_Complex型
(a±c)+(b±d)i


掛け算
×実数型
c
_Imaginary型
di
_Complex型
c+di
実数型
a
実数型
a×c
_Imaginary型
(a×d)i
_Complex型
(a×c)+(a×d)i
_Imaginary型
bi
_Imaginary型
(b×c)i
実数型
-(b×d)
_Complex型
-(b×d)+(b×c)i
_Complex型
a+bi
_Complex型
(a×c)+(b×c)i
_Complex型
-(b×d)+(a×d)i
_Complex型
(a×c)-(b×d)+(a×d+b×c)i


割り算
÷実数型
c
_Imaginary型
di
_Complex型
c+di
実数型
a
実数型
a
──
c
_Imaginary型
a
- ── i
d
_Complex型

(a×c)-(a×d)i
───────
c2+d2
_Imaginary型
bi
_Imaginary型
b
── i
c
実数型
b
──
d
_Complex型

(b×d)-(b×c)i
───────
c2+d2
_Complex型
a+bi
_Complex型
a    b
── + ── i
c    c
_Complex型
b    a
── - ── i
d    d
_Complex型

a×c+b×d+(b×c-a×d)i
────────────
c2+d2




by seclan


| |

 

配信

4.56 msec