.\" Copyright 2002 Walter Harms (walter.harms@informatik.uni-oldenburg.de) .\" .\" %%%LICENSE_START(GPL_NOVERSION_ONELINE) .\" Distributed under GPL .\" %%%LICENSE_END .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .\" .\" Japanese Version Copyright (c) 2003 Akihiro MOTOKI .\" all rights reserved. .\" Translated 2003-08-02, Akihiro MOTOKI .\" Updated 2005-02-20, Akihiro MOTOKI .\" .TH COMPLEX 7 2020\-06\-09 "" "Linux Programmer's Manual" .SH 名前 complex \- 複素数の数学の基礎 .SH 書式 \fB#include \fP .SH 説明 複素数は z = a+b*i の形式の数である。 a と b は実数であり、 i は i = sqrt(\-1) つまり i*i = \-1 の関係を満たす。 .PP 複素数を表現する別の方法もある。実数の組 (a,b) は X座標、Y座標で 指定された平面上の点と見ることができる。この同じ点は、実数の組 (r,phi) で表すこともできる。r は原点 0 からの距離であり、phi は X軸と 0 と z を結ぶ線分がなす角である。このとき、 z = r*exp(i*phi) = r*(cos(phi)+i*sin(phi)) の関係が成り立つ。 .PP 2つの複素数 z = a+b*i, w = c+d*i に関する基本演算は次のように定義される: .TP \fB加法: z+w = (a+c) + (b+d)*i\fP .TP \fB乗法: z*w = (a*c \- b*d) + (a*d + b*c)*i\fP .TP \fB除法: z/w = ((a*c + b*d)/(c*c + d*d)) + ((b*c \- a*d)/(c*c + d*d))*i\fP .PP ほとんど全ての数学関数に関して複素数版があるが、 複素数専用の関数も幾つかある。 .SH 例 使用する C コンパイラが C99 標準をサポートしていれば複素数を使うことができる。 \fI\-lm\fP をつけてリンクすること。虚数単位は I で表現される。 .PP .EX /* exp(i * pi) == \-1 となることを確認する */ #include /* for atan */ #include #include int main(void) { double pi = 4 * atan(1.0); double complex z = cexp(I * pi); printf("%f + %f * i\en", creal(z), cimag(z)); } .EE .SH 関連項目 \fBcabs\fP(3), \fBcacos\fP(3), \fBcacosh\fP(3), \fBcarg\fP(3), \fBcasin\fP(3), \fBcasinh\fP(3), \fBcatan\fP(3), \fBcatanh\fP(3), \fBccos\fP(3), \fBccosh\fP(3), \fBcerf\fP(3), \fBcexp\fP(3), \fBcexp2\fP(3), \fBcimag\fP(3), \fBclog\fP(3), \fBclog10\fP(3), \fBclog2\fP(3), \fBconj\fP(3), \fBcpow\fP(3), \fBcproj\fP(3), \fBcreal\fP(3), \fBcsin\fP(3), \fBcsinh\fP(3), \fBcsqrt\fP(3), \fBctan\fP(3), \fBctanh\fP(3) .SH この文書について この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 5.10 の一部である。プロジェクトの説明とバグ報告に関する情報は \%https://www.kernel.org/doc/man\-pages/ に書かれている。