複素数型とは? わかりやすく解説

複素数型

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2023/12/27 17:43 UTC 版)

複素数型(ふくそすうがた、: complex data type)とは、いくつかのプログラミング言語において標準で用意されているデータ型の1つで、複素数の表現および演算を取り扱うものである。コンピュータが(厳密には)実数を扱えるわけではないので、複素数も同様に、実際は浮動小数点型のタプルである。

複素数演算

複素数型の値は通常、2つの浮動小数点数によって表される。あまりないが極座標表現を併用するものや場合もある。加減乗除の演算子(+, -, *, /)が複素数を扱えたり、複素数型の値を表現するリテラルがあったりする言語のことを「複素数のサポートがある」などと言ったりする。他に、比較演算や、ライブラリによる文字列との変換、などがある。数学と同様に、虚部が0の複素数型の値を、(何らかの暗黙の型変換システムによって)他の、実数の部分集合となっている数値型の値と同一視できるような場合もある。

コンパイラの場合、FPU命令の列にコンパイルするものもあれば、ライブラリ呼び出しにコンパイルするものもある。命令セットアーキテクチャによっては、直接サポートされていることもある。

実装

  • FORTRANCOMPLEX
  • C言語では、C99 標準ライブラリヘッダの <complex.h> に複素数演算に必要なデータ型や関数の定義が含まれる。
  • C++ 標準ライブラリには、complex クラステンプレートと複素関数<complex> ヘッダに含まれる。
  • Go言語では組み込み型に complex64 (実部、虚部ともに32ビット単精度型) と complex128 (実部、虚部ともに64ビット倍精度型) がある。
  • Perl はコアモジュールの Math::Complex で複素数をサポートする。
  • Python は組み込みの complex 型で複素数をサポートする。虚数リテラルは数値の最後に j と付けることで表す。複素関数は標準ライブラリモジュールの cmath で提供される。 [1]
  • Ruby は標準ライブラリモジュール complex に含まれる Complex クラスで複素数をサポートする。
  • OCaml は標準ライブラリモジュールの Complex を通して複素数をサポートする。
  • Haskell は標準ライブラリモジュールの Data.Complex (以前は Complex) を通して複素数をサポートする。
  • Java では、Apache Commons Math に含まれる Complex クラスを通して複素数をサポートする。
  • Common Lisp: ANSI 標準では成分が浮動小数点数か任意長整数からなる複素数をサポートする。基本的な数学関数は、適用可能な限りにおいて、複素数においても定義される。例えば -1 の平方根は複素数となる。
 ? (sqrt -1)
#C(0 1)            ; the result of (sqrt -1)
  • Scheme: 複素数と複素関数 (例: sin) は言語仕様に含まれている。これは R5RS ではオプションだったが、R6RS では実装が必須となっている。
  • .NET Framework では、バージョン 4.0 より System.Numerics.Complex で提供される。
  • Swift に複素数データ型は標準装備ではないが、言語と同じメンテナによる Swift NumericsComplexModuleが同包されている。

歴史

COMPLEX 型は FORTRAN IVより導入された。[2]

出典

  1. ^ Python v2.6.5 documentation
  2. ^ A guide to Fortran IV programming Daniel D. McCracken - 1972 - 288 pages. "The capability provided by Fortran complex operations is a great savings in programming effort in certain problems. "

複素数型

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/07/14 08:29 UTC 版)

キーワード (C言語)」の記事における「複素数型」の解説

_Complex, _Imaginary C99にて標準化。_Imaginary は厳密には複素数型ではなく虚数型であり、すべての処理系サポートされわけではない。これらは直前浮動小数点型伴って精度指定する記述例: double _Complex z = 1.2 + 3.4 * I;

※この「複素数型」の解説は、「キーワード (C言語)」の解説の一部です。
「複素数型」を含む「キーワード (C言語)」の記事については、「キーワード (C言語)」の概要を参照ください。

ウィキペディア小見出し辞書の「複素数型」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「複素数型」の関連用語

複素数型のお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



複素数型のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアの複素数型 (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、Wikipediaのキーワード (C言語) (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2025 GRAS Group, Inc.RSS