次の方法で共有


Complex.Addition Operator

定義

指定した数値を別の指定した数値に追加します。少なくとも 1 つは複素数で、もう 1 つは倍精度実数になります。

オーバーロード

Addition(Complex, Complex)

2 つの複素数を加算します。

Addition(Complex, Double)

倍精度実数に複素数を追加します。

Addition(Double, Complex)

倍精度実数を複素数に追加します。

次の例は、複素数を使用した加算を示しています。

using System;
using System.Numerics;

public class Example
{
   public static void Main()
   {
      Complex[] values= { new Complex(12.3, -1.4),
                          new Complex(-6.2, 3.1),
                          new Complex(8.9, 1.5) };
      foreach (var c1 in values)
         foreach (var c2 in values)
            Console.WriteLine("{0} + {1} = {2}", c1, c2, c1 + c2);
   }
}
// The example displays the following output:
//       (12.3, -1.4) + (12.3, -1.4) = (24.6, -2.8)
//       (12.3, -1.4) + (-6.2, 3.1) = (6.1, 1.7)
//       (12.3, -1.4) + (8.9, 1.5) = (21.2, 0.1)
//       (-6.2, 3.1) + (12.3, -1.4) = (6.1, 1.7)
//       (-6.2, 3.1) + (-6.2, 3.1) = (-12.4, 6.2)
//       (-6.2, 3.1) + (8.9, 1.5) = (2.7, 4.6)
//       (8.9, 1.5) + (12.3, -1.4) = (21.2, 0.1)
//       (8.9, 1.5) + (-6.2, 3.1) = (2.7, 4.6)
//       (8.9, 1.5) + (8.9, 1.5) = (17.8, 3)
open System.Numerics

let values = [ Complex(12.3, -1.4); Complex(-6.2, 3.1); Complex(8.9, 1.5) ]

for c1 in values do
    for c2 in values do
        printfn $"{c1} + {c2} = {c1 + c2}"
// The example displays the following output:
//       (12.3, -1.4) + (12.3, -1.4) = (24.6, -2.8)
//       (12.3, -1.4) + (-6.2, 3.1) = (6.1, 1.7)
//       (12.3, -1.4) + (8.9, 1.5) = (21.2, 0.1)
//       (-6.2, 3.1) + (12.3, -1.4) = (6.1, 1.7)
//       (-6.2, 3.1) + (-6.2, 3.1) = (-12.4, 6.2)
//       (-6.2, 3.1) + (8.9, 1.5) = (2.7, 4.6)
//       (8.9, 1.5) + (12.3, -1.4) = (21.2, 0.1)
//       (8.9, 1.5) + (-6.2, 3.1) = (2.7, 4.6)
//       (8.9, 1.5) + (8.9, 1.5) = (17.8, 3)
Imports System.Numerics

Module modMain
   Public Sub Main()
      Dim values() As Complex = { New Complex(12.3, -1.4), 
                                  New Complex(-6.2, 3.1), 
                                  New Complex(8.9, 1.5) }   
      For Each c1 In values
         For Each c2 In values
            Console.WriteLine("{0} + {1} = {2}", c1, c2, c1 + c2)
         Next
      Next      
   End Sub
End Module
' The example displays the following output:
'       (12.3, -1.4) + (12.3, -1.4) = (24.6, -2.8)
'       (12.3, -1.4) + (-6.2, 3.1) = (6.1, 1.7)
'       (12.3, -1.4) + (8.9, 1.5) = (21.2, 0.1)
'       (-6.2, 3.1) + (12.3, -1.4) = (6.1, 1.7)
'       (-6.2, 3.1) + (-6.2, 3.1) = (-12.4, 6.2)
'       (-6.2, 3.1) + (8.9, 1.5) = (2.7, 4.6)
'       (8.9, 1.5) + (12.3, -1.4) = (21.2, 0.1)
'       (8.9, 1.5) + (-6.2, 3.1) = (2.7, 4.6)
'       (8.9, 1.5) + (8.9, 1.5) = (17.8, 3)

注釈

Addition 演算子を使用すると、複素数を含む加算演算を実行できます。 これにより、次のようなコードが有効になります。

Complex c1 = new Complex(1.2, 2.3);
Complex c2 = new Complex(2.1, 3.2);
Complex c3 = c1 + c2;
let c1 = Complex(1.2, 2.3)
let c2 = Complex(2.1, 3.2)
let c3 = c1 + c2
Dim c1 As New Complex(1.2, 2.3)
Dim c2 As New Complex(2.1, 3.2)
Dim c3 As Complex = c1 + c2

加算によって実数成分または虚数成分のいずれかがオーバーフローする場合、その成分の値は Double.PositiveInfinity または Double.NegativeInfinityのいずれかになります。

カスタム演算子をサポートしていない言語では、代わりに、Add 同等のメソッド グループを呼び出すことができます。

1 つの double を受け取る Addition 演算子は、2 つの複素数を受け取る演算子よりも効率的です。

Addition(Complex, Complex)

ソース:
Complex.cs
ソース:
Complex.cs
ソース:
Complex.cs

2 つの複素数を加算します。

public:
 static System::Numerics::Complex operator +(System::Numerics::Complex left, System::Numerics::Complex right);
public:
 static System::Numerics::Complex operator +(System::Numerics::Complex left, System::Numerics::Complex right) = System::Numerics::IAdditionOperators<System::Numerics::Complex, System::Numerics::Complex, System::Numerics::Complex>::op_Addition;
public static System.Numerics.Complex operator + (System.Numerics.Complex left, System.Numerics.Complex right);
static member ( + ) : System.Numerics.Complex * System.Numerics.Complex -> System.Numerics.Complex
Public Shared Operator + (left As Complex, right As Complex) As Complex

パラメーター

left
Complex

追加する最初の複合値。

right
Complex

追加する 2 番目の複合値。

戻り値

leftrightの合計。

実装

注釈

複素数、a + bi、および 2 番目の複素数 (c + di) の加算は、次の形式になります。

$(a + c) + (b + d)i$

カスタム演算子をサポートしていない言語では、代わりに同等のメソッド Complex.Add(Complex, Double) 呼び出すことができます。

こちらもご覧ください

適用対象

Addition(Complex, Double)

ソース:
Complex.cs
ソース:
Complex.cs
ソース:
Complex.cs

倍精度実数に複素数を追加します。

public:
 static System::Numerics::Complex operator +(System::Numerics::Complex left, double right);
public static System.Numerics.Complex operator + (System.Numerics.Complex left, double right);
static member ( + ) : System.Numerics.Complex * double -> System.Numerics.Complex
Public Shared Operator + (left As Complex, right As Double) As Complex

パラメーター

left
Complex

追加する複合値。

right
Double

加算する倍精度実数。

戻り値

複素数としての leftright の合計。

注釈

複素数 (a + bi) と実数 (複素数 c + 0iと見なすことができます) の加算は、次の形式になります。

$(a + c) + bi$

カスタム演算子をサポートしていない言語では、代わりに同等のメソッド Complex.Add(Double, Complex) 呼び出すことができます。

こちらもご覧ください

適用対象

Addition(Double, Complex)

ソース:
Complex.cs
ソース:
Complex.cs
ソース:
Complex.cs

倍精度実数を複素数に追加します。

public:
 static System::Numerics::Complex operator +(double left, System::Numerics::Complex right);
public static System.Numerics.Complex operator + (double left, System.Numerics.Complex right);
static member ( + ) : double * System.Numerics.Complex -> System.Numerics.Complex
Public Shared Operator + (left As Double, right As Complex) As Complex

パラメーター

left
Double

加算する倍精度実数。

right
Complex

追加する複合値。

戻り値

複素数としての leftright の合計。

注釈

実数 (複素数 a + 0iと見なすことができます) と複素数 (c + di) の加算は、次の形式になります。

$(a + c) + di$

カスタム演算子をサポートしていない言語では、代わりに同等のメソッド Complex.Add(Double, Complex) 呼び出すことができます。

こちらもご覧ください

適用対象