C++のreal()関数とは?複素数の実部を取得する方法を徹底解説
C++には、複素数を扱うための便利な標準ライブラリが用意されています。本記事では、その中でもreal()関数に焦点を当て、基本的な使い方から実際のコード例まで詳しく解説します。
real()関数とは
real()関数は、指定された複素数の実部(Real Part)を取得するための関数です。この関数は <complex> ヘッダファイルに定義されており、引数として渡された複素数から実部の値を返します。
複素数は一般的に「a + bi」の形式で表されます。このとき、bi が虚部(Imaginary Part)、a が実部(Real Part)に相当します。たとえば複素数「14.7 + 6.7i」の場合、実部は「14.7」となります。
- 戻り値: 指定した複素数の実部を返します。
構文(Syntax)
template<class Y> Y real(const complex<Y>& X);
パラメータ: X ― 実部を取得したい対象となる複素数を表します。
出力例
複素数 = (14.7, 6.7) 複素数の実部 = 14.7 複素数 = (12, 12) 複素数の実部 = 12
処理の手順(Approach)
real()関数を使って複素数の実部を取得するには、以下の手順に従います。
まず、複素数を定義します。
次に、定義した複素数を出力します。
最後に、real()関数を使って複素数の実部を出力します。
この手順に従うことで、目的の出力を得ることができます。なお、real(X) を呼び出した場合の結果は、メンバ関数 X.real() を呼び出した場合と同じになります。
アルゴリズム
開始 −
STEP 1 − main() 関数を作成し、複素数を定義する。
complex<double> realpart(3.6, 2.4);
STEP 2 − real() 関数を使って実部を出力する。
cout << "複素数の実部 = " << real(realpart) << endl;
終了
サンプルコード
// C++コード:real()関数の動作を示すサンプル
#include <iostream>
#include <complex>
using namespace std;
int main() {
// 複素数を定義
complex<double> real_part(17.6, 4.5);
cout << "複素数 = " << real_part << endl;
// real()関数を使って実部を出力
cout << "複素数の実部 = " << real(real_part) << endl;
return 0;
}
実行結果
上記のコードを実行すると、以下のような出力が得られます。
複素数 = (17.6, 4.5) 複素数の実部 = 17.6
また、整数型の複素数に対しても同様に動作します。
複素数 = (14, 17) 複素数の実部 = 14
まとめ
C++の real() 関数は、<complex> ヘッダに含まれるシンプルながら強力な関数です。複素数処理を行うプログラムでは、虚部を扱う imag() 関数と組み合わせて使うことで、より柔軟な数値計算が可能になります。科学技術計算や信号処理などの分野で複素数を扱う際に、ぜひ活用してみてください。
-
C++で複素数を扱う方法:クラスの自作と加減算の実装
C++における複素数の扱い方この記事では、C++で複素数を作成し、活用する方法を解説します。C++では独自の複素数クラスを定義でき、複素数の実部(real)と虚部(imaginary)をメンバ変数として保持することが可能です。さらに、そのクラスを操作するためのメンバ関数やフレンド関数を用意すれば、複素数の加算・減算といった演算も自然な形で実装できます。以下の例では、複素数を表すクラスを1つ作成し、複素数を正しい形式で画面に表示する関数、そして2つの複素数を加算・減算するためのメソッドを追加しています。複素数クラスの設計方針今回作成するcomplexクラスは、次のような構成になっています。デフォ
-
構造体を関数に渡して複素数を加算するC++プログラムの書き方
複素数とは複素数とは、a+bi の形式で表される数のことです。ここで i は虚数単位、a と b は実数を表します。複素数の具体例は以下の通りです。2+5i 3-9i 8+2i2つの複素数を加算する場合、実部同士、虚部同士をそれぞれ足し合わせます。つまり、(a+bi) + (c+di) = (a+c) + (b+d)i という計算になります。本記事では、C++の構造体を使って複素数を表現し、それを関数に渡して加算する方法を解説します。サンプルプログラム以下は、構造体を関数に渡すことで複素数の加算を行うC++プログラムの完全なコードです。#include <iostream> us