Complex Complex Complex Complex Struct

Definizione

Rappresenta un numero complesso.Represents a complex number.

public value class Complex : IEquatable<System::Numerics::Complex>, IFormattable
[System.Serializable]
public struct Complex : IEquatable<System.Numerics.Complex>, IFormattable
type Complex = struct
    interface IFormattable
Public Structure Complex
Implements IEquatable(Of Complex), IFormattable
Ereditarietà
Attributi
Implementazioni

Commenti

Un numero complesso è un numero costituito da una parte numerica reale e da una parte numerica immaginaria.A complex number is a number that comprises a real number part and an imaginary number part. Un numero complesso z viene in genere scritto nel formato z = x + Yi, dove x e y sono numeri reali, ed ** è l'unità immaginaria con la proprietà i2 =-1.A complex number z is usually written in the form z = x + yi, where x and y are real numbers, and i is the imaginary unit that has the property i2 = -1. La parte reale del numero complesso è rappresentata da xe la parte immaginaria del numero complesso è rappresentata da y.The real part of the complex number is represented by x, and the imaginary part of the complex number is represented by y.

Il Complex tipo utilizza il sistema di coordinate cartesiane (reale, immaginaria) quando si crea un'istanza e si modificano numeri complessi.The Complex type uses the Cartesian coordinate system (real, imaginary) when instantiating and manipulating complex numbers. Un numero complesso può essere rappresentato come punto in un sistema di coordinate bidimensionale, noto come piano complesso.A complex number can be represented as a point in a two-dimensional coordinate system, which is known as the complex plane. La parte reale del numero complesso è posizionata sull'asse x (l'asse orizzontale) e la parte immaginaria è posizionata sull'asse y (asse verticale).The real part of the complex number is positioned on the x-axis (the horizontal axis), and the imaginary part is positioned on the y-axis (the vertical axis).

Qualsiasi punto nel piano complesso può anche essere espresso in base al relativo valore assoluto, usando il sistema di coordinate polare.Any point in the complex plane can also be expressed based on its absolute value, by using the polar coordinate system. Nelle coordinate polari, un punto è caratterizzato da due numeri:In polar coordinates, a point is characterized by two numbers:

  • La sua grandezza, ovvero la distanza del punto dall'origine (ovvero 0, 0 o il punto in corrispondenza del quale l'asse x e l'asse y si intersecano).Its magnitude, which is the distance of the point from the origin (that is, 0,0, or the point at which the x-axis and the y-axis intersect).

  • La fase, ovvero l'angolo tra l'asse reale e la linea disegnata dall'origine al punto.Its phase, which is the angle between the real axis and the line drawn from the origin to the point.

Creazione di un'istanza di un numero complessoInstantiating a Complex Number

È possibile assegnare un valore a un numero complesso in uno dei modi seguenti:You can assign a value to a complex number in one of the following ways:

  • Passando due Double valori al relativo costruttore.By passing two Double values to its constructor. Il primo valore rappresenta la parte reale del numero complesso e il secondo valore rappresenta la parte immaginaria.The first value represents the real part of the complex number, and the second value represents its imaginary part. Questi valori rappresentano la posizione del numero complesso nel sistema di coordinate cartesiane bidimensionali.These values represent the position of the complex number in the two-dimensional Cartesian coordinate system.

  • Chiamando il metodo statico (Shared in Visual Basic) Complex.FromPolarCoordinates per creare un numero complesso dalle coordinate polari.By calling the static (Shared in Visual Basic) Complex.FromPolarCoordinates method to create a complex number from its polar coordinates.

  • ByteAssegnando un valore, SByte, Int16, UInt16, Int32, ,UInt32 ,UInt64, oDoublea un oggettoComplex . Int64 SingleBy assigning a Byte, SByte, Int16, UInt16, Int32, UInt32, Int64, UInt64, Single, or Double value to a Complex object. Il valore diventa la parte reale del numero complesso e la relativa parte immaginaria è uguale a 0.The value becomes the real part of the complex number, and its imaginary part equals 0.

  • Eseguendo il cast ( C#in) o convertendo (in Visual Basic Decimal ) BigInteger un valore o Complex in un oggetto.By casting (in C#) or converting (in Visual Basic) a Decimal or BigInteger value to a Complex object. Il valore diventa la parte reale del numero complesso e la relativa parte immaginaria è uguale a 0.The value becomes the real part of the complex number, and its imaginary part equals 0.

  • Assegnando il numero complesso restituito da un metodo o un operatore a un Complex oggetto.By assigning the complex number that is returned by a method or operator to a Complex object. Ad esempio, Complex.Add è un metodo statico che restituisce un numero complesso che è la somma di due numeri complessi e l' Complex.Addition operatore aggiunge due numeri complessi e restituisce il risultato.For example, Complex.Add is a static method that returns a complex number that is the sum of two complex numbers, and the Complex.Addition operator adds two complex numbers and returns the result.

Nell'esempio seguente viene illustrato ognuno di questi cinque metodi di assegnazione di un valore a un numero complesso.The following example demonstrates each of these five ways of assigning a value to a complex number.

using System;
using System.Numerics;

public class Example
{
   public static void Main()
   {
      // Create a complex number by calling its class constructor.
      Complex c1 = new Complex(12, 6);
      Console.WriteLine(c1);
      
      // Assign a Double to a complex number.
      Complex c2 = 3.14;
      Console.WriteLine(c2);
      
      // Cast a Decimal to a complex number.
      Complex c3 = (Complex) 12.3m;
      Console.WriteLine(c3);
      
      // Assign the return value of a method to a Complex variable.
      Complex c4 = Complex.Pow(Complex.One, -1);
      Console.WriteLine(c4);
      
      // Assign the value returned by an operator to a Complex variable.
      Complex c5 = Complex.One + Complex.One;
      Console.WriteLine(c5);

      // Instantiate a complex number from its polar coordinates.
      Complex c6 = Complex.FromPolarCoordinates(10, .524);
      Console.WriteLine(c6);
   }
}
// The example displays the following output:
//       (12, 6)
//       (3.14, 0)
//       (12.3, 0)
//       (1, 0)
//       (2, 0)
//       (8.65824721882145, 5.00347430269914)
Imports System.Numerics

Module Example
   Public Sub Main()
      ' Create a complex number by calling its class constructor.
      Dim c1 As New Complex(12, 6)
      Console.WriteLine(c1)
      
      ' Assign a Double to a complex number.
      Dim c2 As Complex = 3.14
      Console.WriteLine(c2)
      
      ' Cast a Decimal to a complex number.
      Dim c3 As Complex = CType(12.3d, Complex)
      Console.WriteLine(c3)
      
      ' Assign the return value of a method to a Complex variable.
      Dim c4 As Complex = Complex.Pow(Complex.One, -1)
      Console.WriteLine(c4)
      
      ' Assign the value returned by an operator to a Complex variable.
      Dim c5 As Complex = Complex.One + Complex.One
      Console.WriteLine(c5)

      ' Instantiate a complex number from its polar coordinates.
      Dim c6 As Complex = Complex.FromPolarCoordinates(10, .524)
      Console.WriteLine(c6)
   End Sub
End Module
' The example displays the following output:
'       (12, 6)
'       (3.14, 0)
'       (12.3000001907349, 0)
'       (1, 0)
'       (2, 0)
'       (8.65824721882145, 5.00347430269914)

Operazioni con numeri complessiOperations with Complex Numbers

La Complex struttura nella .NET Framework include i membri che forniscono le funzionalità seguenti:The Complex structure in the .NET Framework includes members that provide the following functionality:

  • Metodi per confrontare due numeri complessi per determinare se sono uguali.Methods to compare two complex numbers to determine whether they are equal.

  • Operatori per eseguire operazioni aritmetiche su numeri complessi.Operators to perform arithmetic operations on complex numbers. Complexgli operatori consentono di eseguire operazioni di addizione, sottrazione, moltiplicazione, divisione e negazione unaria con numeri complessi.Complex operators enable you to perform addition, subtraction, multiplication, division, and unary negation with complex numbers.

  • Metodi per eseguire altre operazioni numeriche su numeri complessi.Methods to perform other numerical operations on complex numbers. Oltre alle quattro operazioni aritmetiche di base, è possibile aumentare un numero complesso a una potenza specificata, trovare la radice quadrata di un numero complesso e ottenere il valore assoluto di un numero complesso.In addition to the four basic arithmetic operations, you can raise a complex number to a specified power, find the square root of a complex number, and get the absolute value of a complex number.

  • Metodi per eseguire operazioni trigonometriche su numeri complessi.Methods to perform trigonometric operations on complex numbers. Ad esempio, è possibile calcolare la tangente di un angolo rappresentato da un numero complesso.For example, you can calculate the tangent of an angle represented by a complex number.

Si noti che, poiché Real le Imaginary proprietà e sono di sola lettura, non è possibile modificare il valore di Complex un oggetto esistente.Note that, because the Real and Imaginary properties are read-only, you cannot modify the value of an existing Complex object. Tutti i metodi che eseguono un'operazione su Complex un numero, se il valore restituito è di Complextipo, restituiscono Complex un nuovo numero.All methods that perform an operation on a Complex number, if their return value is of type Complex, return a new Complex number.

Precisione e numeri complessiPrecision and Complex Numbers

Le parti reali e immaginarie di un numero complesso sono rappresentate da due valori a virgola mobile e precisione doppia.The real and imaginary parts of a complex number are represented by two double-precision floating-point values. Ciò significa che Complex i valori, ad esempio i valori a virgola mobile e precisione doppia, possono perdere la precisione in seguito a operazioni numeriche.This means that Complex values, like double-precision floating-point values, can lose precision as a result of numerical operations. Ciò significa che i confronti rigidi per Complex l'uguaglianza di due valori possono avere esito negativo, anche se la differenza tra i due valori è causata da una perdita di precisione.This means that strict comparisons for equality of two Complex values may fail, even if the difference between the two values is due to a loss of precision. Per ulteriori informazioni, vedere Double.For more information, see Double.

Ad esempio, l'esecuzione dell'elevamento a potenza sul logaritmo di un numero deve restituire il numero originale.For example, performing exponentiation on the logarithm of a number should return the original number. Tuttavia, in alcuni casi, la perdita di precisione dei valori a virgola mobile può provocare lievi differenze tra i due valori, come illustrato nell'esempio seguente.However, in some cases, the loss of precision of floating-point values can cause slight differences between the two values, as the following example illustrates.

Complex value = new Complex(Double.MinValue/2, Double.MinValue/2);
Complex value2 = Complex.Exp(Complex.Log(value));
Console.WriteLine("{0} \n{1} \nEqual: {2}", value, value2, 
                                            value == value2);
// The example displays the following output:
//    (-8.98846567431158E+307, -8.98846567431158E+307)
//    (-8.98846567431161E+307, -8.98846567431161E+307)
//    Equal: False
Dim value As New Complex(Double.MinValue/2, Double.MinValue/2)
Dim value2 As Complex = Complex.Exp(Complex.Log(value))
Console.WriteLine("{0} {3}{1} {3}Equal: {2}", value, value2, 
                                              value = value2,
                                              vbCrLf)
' The example displays the following output:
'    (-8.98846567431158E+307, -8.98846567431158E+307)
'    (-8.98846567431161E+307, -8.98846567431161E+307)
'    Equal: False

Analogamente, l'esempio seguente, che calcola la radice quadrata di Complex un numero, produce risultati leggermente diversi nelle versioni a 32 bit e ia64 del .NET Framework.Similarly, the following example, which calculates the square root of a Complex number, produces slightly different results on the 32-bit and IA64 versions of the .NET Framework.

Complex minusOne = new Complex(-1, 0);
Console.WriteLine(Complex.Sqrt(minusOne));
// The example displays the following output:
//    (6.12303176911189E-17, 1) on 32-bit systems.
//    (6.12323399573677E-17,1) on IA64 systems.
Dim minusOne As New Complex(-1, 0)
Console.WriteLine(Complex.Sqrt(minusOne))
' The example displays the following output:
'    (6.12303176911189E-17, 1) on 32-bit systems.
'    (6.12323399573677E-17,1) on IA64 systems.

Numeri complessi, infinito e NaNComplex Numbers, Infinity, and NaN

Le parti reali e immaginarie di un numero complesso sono rappresentate Double dai valori.The real and imaginary parts of a complex number are represented by Double values. Oltre a variare da Double.MinValue a Double.MaxValue, la parte reale o immaginaria di un numero complesso può avere un valore di Double.PositiveInfinity, Double.NegativeInfinityo Double.NaN.In addition to ranging from Double.MinValue to Double.MaxValue, the real or imaginary part of a complex number can have a value of Double.PositiveInfinity, Double.NegativeInfinity, or Double.NaN. Double.PositiveInfinity, Double.NegativeInfinity eDouble.NaN vengono propagati in qualsiasi operazione aritmetica o trigonometrica.Double.PositiveInfinity, Double.NegativeInfinity, and Double.NaN all propagate in any arithmetic or trigonometric operation.

Nell'esempio seguente Division by Zero produce un numero complesso le cui parti reale e immaginaria sono entrambe. Double.NaNIn the following example, division by Zero produces a complex number whose real and imaginary parts are both Double.NaN. Di conseguenza, l'esecuzione di una moltiplicazione con questo valore genera anche un numero complesso le cui parti reale e Double.NaNimmaginaria sono.As a result, performing multiplication with this value also produces a complex number whose real and imaginary parts are Double.NaN. Analogamente, l'esecuzione di una moltiplicazione che ha un overflow nell' Double intervallo del tipo produce un numero complesso la cui Double.NaN parte reale è e la cui Double.PositiveInfinityparte immaginaria è.Similarly, performing a multiplication that overflows the range of the Double type produces a complex number whose real part is Double.NaN and whose imaginary part is Double.PositiveInfinity. Se successivamente si esegue la divisione con questo numero complesso, viene restituito un numero Double.NaN complesso la cui parte reale è Double.PositiveInfinitye la cui parte immaginaria è.Subsequently performing division with this complex number returns a complex number whose real part is Double.NaN and whose imaginary part is Double.PositiveInfinity.

using System;
using System.Numerics;

public class Example
{
   public static void Main()
   {
      Complex c1 = new Complex(Double.MaxValue / 2, Double.MaxValue /2);

      Complex c2 = c1 / Complex.Zero;
      Console.WriteLine(c2.ToString());
      c2 = c2 * new Complex(1.5, 1.5);
      Console.WriteLine(c2.ToString());
      Console.WriteLine();
      
      Complex c3 = c1 * new Complex(2.5, 3.5);
      Console.WriteLine(c3.ToString());
      c3 = c3 + new Complex(Double.MinValue / 2, Double.MaxValue / 2); 
      Console.WriteLine(c3);
   }
}
// The example displays the following output:
//       (NaN, NaN)
//       (NaN, NaN)
//       (NaN, Infinity)
//       (NaN, Infinity)
Imports System.Numerics

Module Example
   Public Sub Main()
      Dim c1 As Complex = New Complex(Double.MaxValue / 2, Double.MaxValue /2)

      Dim c2 As Complex = c1 / Complex.Zero
      Console.WriteLine(c2.ToString())
      c2 = c2 * New Complex(1.5, 1.5)
      Console.WriteLine(c2.ToString())
      Console.WriteLine()
      
      Dim c3 As Complex = c1 * New Complex(2.5, 3.5)
      Console.WriteLine(c3.ToString())
      c3 = c3 + New Complex(Double.MinValue / 2, Double.MaxValue / 2) 
      Console.WriteLine(c3)     
   End Sub
End Module
' The example displays the following output:
'       (NaN, NaN)
'       (NaN, NaN)
'
'       (NaN, Infinity)
'       (NaN, Infinity)

Le operazioni matematiche con numeri complessi non validi o che hanno un overflow nell' Double intervallo del tipo di dati non generano un'eccezione.Mathematical operations with complex numbers that are invalid or that overflow the range of the Double data type do not throw an exception. Restituiscono invece un Double.PositiveInfinity, Double.NegativeInfinityo Double.NaN nelle condizioni seguenti:Instead, they return a Double.PositiveInfinity, Double.NegativeInfinity, or Double.NaN under the following conditions:

Si noti che questo vale per tutti i calcoli intermedi eseguiti da un metodo.Note that this applies to any intermediate calculations performed by a method. La moltiplicazione di new Complex(9e308, 9e308) and new Complex(2.5, 3.5) USA ad esempio la formula (AC-BD) + (ad + BC) i.For example, the multiplication of new Complex(9e308, 9e308) and new Complex(2.5, 3.5) uses the formula (ac - bd) + (ad + bc)i. Il calcolo del componente reale risultante dalla moltiplicazione valuta l'espressione 9e308 * 2,5-9e308 * 3,5.The calculation of the real component that results from the multiplication evaluates the expression 9e308 * 2.5 - 9e308 * 3.5. Ogni moltiplicazione intermedia in questa espressione restituisce Double.PositiveInfinitye il tentativo di sottrarre Double.PositiveInfinity da Double.PositiveInfinity restituisce Double.NaN.Each intermediate multiplication in this expression returns Double.PositiveInfinity, and the attempt to subtract Double.PositiveInfinity from Double.PositiveInfinity returns Double.NaN.

Formattazione di un numero complessoFormatting a Complex Number

Per impostazione predefinita, la rappresentazione di stringa di un numero complesso assume (la forma immaginaria) reale , Double , dove reale e immaginaria sono le rappresentazioni di stringa del valori che formano i componenti reali e immaginari del numero complesso.By default, the string representation of a complex number takes the form (real, imaginary), where real and imaginary are the string representations of the Double values that form the complex number's real and imaginary components. Alcuni overload del ToString metodo consentono la personalizzazione delle rappresentazioni di stringa di questi Double valori in modo da riflettere le convenzioni di formattazione di determinate impostazioni cultura o di essere visualizzate in un formato specifico definito da un valore numerico standard o personalizzato. stringa di formato.Some overloads of the ToString method allow customization of the string representations of these Double values to reflect the formatting conventions of a particular culture or to appear in a particular format defined by a standard or custom numeric format string. Per altre informazioni, vedere stringhe di formato numerico standard e stringhe di formato numerico personalizzate.(For more information, see Standard Numeric Format Strings and Custom Numeric Format Strings.)

Uno dei modi più comuni per esprimere la rappresentazione di stringa di un numero complesso prende il formato a + bi, dove a è il componente reale del numero complesso e b è il componente immaginario del numero complesso.One of the more common ways of expressing the string representation of a complex number takes the form a + bi, where a is the complex number's real component, and b is the complex number's imaginary component. Nell'ingegneria elettrica, un numero complesso è comunemente espresso come + BJ.In electrical engineering, a complex number is most commonly expressed as a + bj. È possibile restituire la rappresentazione di stringa di un numero complesso in uno di questi due formati.You can return the string representation of a complex number in either of these two forms. A tale scopo, definire un provider di formato personalizzato implementando ICustomFormatter le IFormatProvider interfacce e, quindi chiamare il String.Format(IFormatProvider, String, Object[]) metodo.To do this, define a custom format provider by implementing the ICustomFormatter and IFormatProvider interfaces, and then call the String.Format(IFormatProvider, String, Object[]) method.

Nell'esempio seguente viene definita ComplexFormatter una classe che rappresenta un numero complesso come stringa nel formato a + bi o + BJ.The following example defines a ComplexFormatter class that represents a complex number as a string in the form of either a + bi or a + bj.

using System;
using System.Numerics;

public class ComplexFormatter :IFormatProvider, ICustomFormatter
{
   public object GetFormat(Type formatType) 
   {   
      if (formatType == typeof(ICustomFormatter))
         return this;
      else
         return null;
   }
   
   public string Format(string format, object arg, 
                        IFormatProvider provider)
   {
      if (arg is Complex)
      {
         Complex c1 = (Complex) arg; 
         // Check if the format string has a precision specifier.
         int precision;
         string fmtString = String.Empty;
         if (format.Length > 1) {
            try {
               precision = Int32.Parse(format.Substring(1));
            }
            catch (FormatException) {
               precision = 0;
            }
            fmtString = "N" + precision.ToString();
         }
         if (format.Substring(0, 1).Equals("I", StringComparison.OrdinalIgnoreCase))
            return c1.Real.ToString(fmtString) + " + " + c1.Imaginary.ToString(fmtString) + "i";
         else if (format.Substring(0, 1).Equals("J", StringComparison.OrdinalIgnoreCase))
            return c1.Real.ToString(fmtString) + " + " + c1.Imaginary.ToString(fmtString) + "j";
         else
            return c1.ToString(format, provider);
      }
      else
      {
         if (arg is IFormattable)
            return ((IFormattable) arg).ToString(format, provider);
         else if (arg != null) 
            return arg.ToString();
         else
            return String.Empty;
      }                        
   }
}
Imports System.Numerics

Public Class ComplexFormatter 
             Implements IFormatProvider, ICustomFormatter
   
   Public Function GetFormat(formatType As Type) As Object _
                   Implements IFormatProvider.GetFormat
      If formatType Is GetType(ICustomFormatter) Then
         Return Me
      Else
         Return Nothing
      End If
   End Function
   
   Public Function Format(fmt As String, arg As Object, 
                          provider As IFormatProvider) As String _
                   Implements ICustomFormatter.Format
      If TypeOf arg Is Complex Then
         Dim c1 As Complex = DirectCast(arg, Complex)
         ' Check if the format string has a precision specifier.
         Dim precision As Integer
         Dim fmtString As String = String.Empty
         If fmt.Length > 1 Then
            Try
               precision = Int32.Parse(fmt.Substring(1))
            Catch e As FormatException
               precision = 0
            End Try
            fmtString = "N" + precision.ToString()
         End If
         If fmt.Substring(0, 1).Equals("I", StringComparison.OrdinalIgnoreCase) Then
            Return c1.Real.ToString(fmtString) + " + " + c1.Imaginary.ToString(fmtString) + "i"
         ElseIf fmt.Substring(0, 1).Equals("J", StringComparison.OrdinalIgnoreCase) Then
            Return c1.Real.ToString(fmtString) + " + " + c1.Imaginary.ToString(fmtString) + "j"
         Else
            Return c1.ToString(fmt, provider)
         End If
      Else
         If Typeof arg Is IFormattable Then
            Return DirectCast(arg, IFormattable).ToString(fmt, provider)
         ElseIf arg IsNot Nothing Then
            Return arg.ToString()
         Else
            Return String.Empty
         End If   
      End If                        
   End Function
End Class

Nell'esempio seguente viene quindi usato il formattatore personalizzato per visualizzare la rappresentazione di stringa di un numero complesso.The following example then uses this custom formatter to display the string representation of a complex number.

public class Example
{
   public static void Main()
   {
      Complex c1 = new Complex(12.1, 15.4);
      Console.WriteLine("Formatting with ToString():       " + 
                        c1.ToString());
      Console.WriteLine("Formatting with ToString(format): " + 
                        c1.ToString("N2"));
      Console.WriteLine("Custom formatting with I0:        " + 
                        String.Format(new ComplexFormatter(), "{0:I0}", c1));
      Console.WriteLine("Custom formatting with J3:        " + 
                        String.Format(new ComplexFormatter(), "{0:J3}", c1));
   }
}
// The example displays the following output:
//    Formatting with ToString():       (12.1, 15.4)
//    Formatting with ToString(format): (12.10, 15.40)
//    Custom formatting with I0:        12 + 15i
//    Custom formatting with J3:        12.100 + 15.400j
Module Example
   Public Sub Main()
      Dim c1 As Complex = New Complex(12.1, 15.4)
      Console.WriteLine("Formatting with ToString():       " + 
                        c1.ToString())
      Console.WriteLine("Formatting with ToString(format): " + 
                        c1.ToString("N2"))
      Console.WriteLine("Custom formatting with I0:        " + 
                        String.Format(New ComplexFormatter(), "{0:I0}", c1))
      Console.WriteLine("Custom formatting with J3:        " + 
                        String.Format(New ComplexFormatter(), "{0:J3}", c1))
   End Sub
End Module
' The example displays the following output:
'    Formatting with ToString():       (12.1, 15.4)
'    Formatting with ToString(format): (12.10, 15.40)
'    Custom formatting with I0:        12 + 15i
'    Custom formatting with J3:        12.100 + 15.400j

Costruttori

Complex(Double, Double) Complex(Double, Double) Complex(Double, Double) Complex(Double, Double)

Inizializza una nuova istanza della struttura Complex usando i valori reali e immaginari specificati.Initializes a new instance of the Complex structure using the specified real and imaginary values.

Campi

ImaginaryOne ImaginaryOne ImaginaryOne ImaginaryOne

Restituisce una nuova istanza di Complex con un numero reale uguale a zero e un numero immaginario uguale a uno.Returns a new Complex instance with a real number equal to zero and an imaginary number equal to one.

Infinity Infinity Infinity Infinity

Rappresenta l'infinito come numero complesso.Represents infinity as a complex number.

NaN NaN NaN NaN

Rappresenta un'istanza complessa che non è un numero (NaN).Represents a complex instance that is not a number (NaN).

One One One One

Restituisce una nuova istanza di Complex con un numero reale uguale a uno e un numero immaginario uguale a zero.Returns a new Complex instance with a real number equal to one and an imaginary number equal to zero.

Zero Zero Zero Zero

Restituisce una nuova istanza di Complex con un numero reale uguale a zero e un numero immaginario uguale a zero.Returns a new Complex instance with a real number equal to zero and an imaginary number equal to zero.

Proprietà

Imaginary Imaginary Imaginary Imaginary

Ottiene il componente immaginario dell'oggetto Complex corrente.Gets the imaginary component of the current Complex object.

Magnitude Magnitude Magnitude Magnitude

Ottiene la grandezza (o valore assoluto) di un numero complesso.Gets the magnitude (or absolute value) of a complex number.

Phase Phase Phase Phase

Ottiene la fase di un numero complesso.Gets the phase of a complex number.

Real Real Real Real

Ottiene il componente reale dell'oggetto Complex corrente.Gets the real component of the current Complex object.

Metodi

Abs(Complex) Abs(Complex) Abs(Complex) Abs(Complex)

Ottiene il valore assoluto (o grandezza) di un numero complesso.Gets the absolute value (or magnitude) of a complex number.

Acos(Complex) Acos(Complex) Acos(Complex) Acos(Complex)

Restituisce l'angolo che costituisce l'arcocoseno del numero complesso specificato.Returns the angle that is the arc cosine of the specified complex number.

Add(Double, Complex) Add(Double, Complex) Add(Double, Complex) Add(Double, Complex)

Aggiunge un numero reale a precisione doppia a un numero complesso e restituisce il risultato.Adds a double-precision real number to a complex number and returns the result.

Add(Complex, Double) Add(Complex, Double) Add(Complex, Double) Add(Complex, Double)

Aggiunge un numero complesso a un numero reale a precisione doppia e restituisce il risultato.Adds a complex number to a double-precision real number and returns the result.

Add(Complex, Complex) Add(Complex, Complex) Add(Complex, Complex) Add(Complex, Complex)

Somma due numeri complessi e restituisce il risultato.Adds two complex numbers and returns the result.

Asin(Complex) Asin(Complex) Asin(Complex) Asin(Complex)

Restituisce l'angolo che costituisce l'arcoseno del numero complesso specificato.Returns the angle that is the arc sine of the specified complex number.

Atan(Complex) Atan(Complex) Atan(Complex) Atan(Complex)

Restituisce l'angolo che costituisce l'arcotangente del numero complesso specificato.Returns the angle that is the arc tangent of the specified complex number.

Conjugate(Complex) Conjugate(Complex) Conjugate(Complex) Conjugate(Complex)

Calcola il coniugato di un numero complesso e restituisce il risultato.Computes the conjugate of a complex number and returns the result.

Cos(Complex) Cos(Complex) Cos(Complex) Cos(Complex)

Restituisce il coseno del numero complesso specificato.Returns the cosine of the specified complex number.

Cosh(Complex) Cosh(Complex) Cosh(Complex) Cosh(Complex)

Restituisce il coseno iperbolico del numero complesso specificato.Returns the hyperbolic cosine of the specified complex number.

Divide(Double, Complex) Divide(Double, Complex) Divide(Double, Complex) Divide(Double, Complex)

Divide un numero reale a precisione doppia per un numero complesso e restituisce il risultato.Divides one double-precision real number by a complex number and returns the result.

Divide(Complex, Double) Divide(Complex, Double) Divide(Complex, Double) Divide(Complex, Double)

Divide un numero complesso per un numero reale a precisione doppia e restituisce il risultato.Divides one complex number by a double-precision real number and returns the result.

Divide(Complex, Complex) Divide(Complex, Complex) Divide(Complex, Complex) Divide(Complex, Complex)

Divide un numero complesso per un altro e restituisce il risultato.Divides one complex number by another and returns the result.

Equals(Complex) Equals(Complex) Equals(Complex) Equals(Complex)

Restituisce un valore che indica se l'istanza corrente e un numero complesso specificato hanno lo stesso valore.Returns a value that indicates whether the current instance and a specified complex number have the same value.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Restituisce un valore che indica se l'istanza corrente e un oggetto specificato hanno lo stesso valore.Returns a value that indicates whether the current instance and a specified object have the same value.

Exp(Complex) Exp(Complex) Exp(Complex) Exp(Complex)

Restituisce e elevato alla potenza specificata da un numero complesso.Returns e raised to the power specified by a complex number.

FromPolarCoordinates(Double, Double) FromPolarCoordinates(Double, Double) FromPolarCoordinates(Double, Double) FromPolarCoordinates(Double, Double)

Crea un numero complesso dalle coordinate polari di un punto.Creates a complex number from a point's polar coordinates.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Restituisce il codice hash per l'oggetto Complex corrente.Returns the hash code for the current Complex object.

IsFinite(Complex) IsFinite(Complex) IsFinite(Complex) IsFinite(Complex)

Determina se il numero complesso specificato è finito.Determines whether the specified complex number is finite.

IsInfinity(Complex) IsInfinity(Complex) IsInfinity(Complex) IsInfinity(Complex)

Restituisce un valore che indica se il numero complesso specificato restituisce l'infinito.Returns a value indicating whether the specified complex number evaluates to infinity.

IsNaN(Complex) IsNaN(Complex) IsNaN(Complex) IsNaN(Complex)

Restituisce un valore che indica se l'istanza complessa specificata non è un numero (NaN).Returns a value that indicates whether the specified complex instance is not a number (NaN).

Log(Complex) Log(Complex) Log(Complex) Log(Complex)

Restituisce e, la base del logaritmo naturale del numero complesso specificato.Returns the natural (base e) logarithm of a specified complex number.

Log(Complex, Double) Log(Complex, Double) Log(Complex, Double) Log(Complex, Double)

Restituisce il logaritmo del numero complesso specificato nella base specificata.Returns the logarithm of a specified complex number in a specified base.

Log10(Complex) Log10(Complex) Log10(Complex) Log10(Complex)

Restituisce il logaritmo in base 10 del numero complesso specificato.Returns the base-10 logarithm of a specified complex number.

Multiply(Complex, Complex) Multiply(Complex, Complex) Multiply(Complex, Complex) Multiply(Complex, Complex)

Restituisce il prodotto di due numeri complessi.Returns the product of two complex numbers.

Multiply(Double, Complex) Multiply(Double, Complex) Multiply(Double, Complex) Multiply(Double, Complex)

Restituisce il prodotto di un numero reale a precisione doppia e un numero complesso.Returns the product of a double-precision real number and a complex number.

Multiply(Complex, Double) Multiply(Complex, Double) Multiply(Complex, Double) Multiply(Complex, Double)

Restituisce il prodotto di un numero complesso e un numero reale a precisione doppia.Returns the product of a complex number and a double-precision real number.

Negate(Complex) Negate(Complex) Negate(Complex) Negate(Complex)

Restituisce l'inverso additivo di un numero complesso specificato.Returns the additive inverse of a specified complex number.

Pow(Complex, Double) Pow(Complex, Double) Pow(Complex, Double) Pow(Complex, Double)

Restituisce un numero complesso specificato elevato a una potenza specificata da un numero a virgola mobile a precisione doppia.Returns a specified complex number raised to a power specified by a double-precision floating-point number.

Pow(Complex, Complex) Pow(Complex, Complex) Pow(Complex, Complex) Pow(Complex, Complex)

Restituisce un numero complesso specificato elevato a una potenza specificata da un numero complesso.Returns a specified complex number raised to a power specified by a complex number.

Reciprocal(Complex) Reciprocal(Complex) Reciprocal(Complex) Reciprocal(Complex)

Restituisce il reciproco moltiplicativo di un numero complesso.Returns the multiplicative inverse of a complex number.

Sin(Complex) Sin(Complex) Sin(Complex) Sin(Complex)

Restituisce il seno del numero complesso specificato.Returns the sine of the specified complex number.

Sinh(Complex) Sinh(Complex) Sinh(Complex) Sinh(Complex)

Restituisce il seno iperbolico del numero complesso specificato.Returns the hyperbolic sine of the specified complex number.

Sqrt(Complex) Sqrt(Complex) Sqrt(Complex) Sqrt(Complex)

Restituisce la radice quadrata del numero complesso specificato.Returns the square root of a specified complex number.

Subtract(Double, Complex) Subtract(Double, Complex) Subtract(Double, Complex) Subtract(Double, Complex)

Sottrae un numero complesso da un numero reale a precisione doppia e restituisce il risultato.Subtracts one complex number from a double-precision real number and returns the result.

Subtract(Complex, Double) Subtract(Complex, Double) Subtract(Complex, Double) Subtract(Complex, Double)

Sottrae un numero reale a precisione doppia da un numero complesso e restituisce il risultato.Subtracts one double-precision real number from a complex number and returns the result.

Subtract(Complex, Complex) Subtract(Complex, Complex) Subtract(Complex, Complex) Subtract(Complex, Complex)

Sottrae un numero complesso da un altro e restituisce il risultato.Subtracts one complex number from another and returns the result.

Tan(Complex) Tan(Complex) Tan(Complex) Tan(Complex)

Restituisce la tangente del numero complesso specificato.Returns the tangent of the specified complex number.

Tanh(Complex) Tanh(Complex) Tanh(Complex) Tanh(Complex)

Restituisce la tangente iperbolica del numero complesso specificato.Returns the hyperbolic tangent of the specified complex number.

ToString() ToString() ToString() ToString()

Converte il valore del numero complesso corrente nella relativa rappresentazione di stringa equivalente in formato cartesiano.Converts the value of the current complex number to its equivalent string representation in Cartesian form.

ToString(IFormatProvider) ToString(IFormatProvider) ToString(IFormatProvider) ToString(IFormatProvider)

Converte il valore del numero complesso corrente nella relativa rappresentazione di stringa equivalente in formato cartesiano usando le informazioni di formattazione relative alle impostazioni cultura specificate.Converts the value of the current complex number to its equivalent string representation in Cartesian form by using the specified culture-specific formatting information.

ToString(String) ToString(String) ToString(String) ToString(String)

Converte il valore del numero complesso corrente nella relativa rappresentazione di stringa equivalente in formato cartesiano usando il formato specificato per le parti reale e immaginaria.Converts the value of the current complex number to its equivalent string representation in Cartesian form by using the specified format for its real and imaginary parts.

ToString(String, IFormatProvider) ToString(String, IFormatProvider) ToString(String, IFormatProvider) ToString(String, IFormatProvider)

Converte il valore del numero complesso corrente nella relativa rappresentazione di stringa equivalente in formato cartesiano usando il formato specificato e le informazioni sul formato relative alle impostazioni cultura per le parti reale e immaginaria.Converts the value of the current complex number to its equivalent string representation in Cartesian form by using the specified format and culture-specific format information for its real and imaginary parts.

Operatori

Addition(Complex, Complex) Addition(Complex, Complex) Addition(Complex, Complex) Addition(Complex, Complex)

Somma due numeri complessi.Adds two complex numbers.

Addition(Double, Complex) Addition(Double, Complex) Addition(Double, Complex) Addition(Double, Complex)

Aggiunge un numero reale a precisione doppia a un numero complesso.Adds a double-precision real number to a complex number.

Addition(Complex, Double) Addition(Complex, Double) Addition(Complex, Double) Addition(Complex, Double)

Aggiunge un numero complesso a un numero reale a precisione doppia.Adds a complex number to a double-precision real number.

Division(Complex, Complex) Division(Complex, Complex) Division(Complex, Complex) Division(Complex, Complex)

Divide un numero complesso specificato per un altro numero complesso specificato.Divides a specified complex number by another specified complex number.

Division(Complex, Double) Division(Complex, Double) Division(Complex, Double) Division(Complex, Double)

Divide un numero complesso specificato per un numero reale a precisione doppia specificato.Divides a specified complex number by a specified double-precision real number.

Division(Double, Complex) Division(Double, Complex) Division(Double, Complex) Division(Double, Complex)

Divide un numero reale a precisione doppia specificato per un numero complesso specificato.Divides a specified double-precision real number by a specified complex number.

Equality(Complex, Complex) Equality(Complex, Complex) Equality(Complex, Complex) Equality(Complex, Complex)

Restituisce un valore che indica se due numeri complessi sono uguali.Returns a value that indicates whether two complex numbers are equal.

Explicit(Decimal to Complex) Explicit(Decimal to Complex) Explicit(Decimal to Complex) Explicit(Decimal to Complex)

Definisce una conversione esplicita di un valore Decimal in un numero complesso.Defines an explicit conversion of a Decimal value to a complex number.

Explicit(BigInteger to Complex) Explicit(BigInteger to Complex) Explicit(BigInteger to Complex) Explicit(BigInteger to Complex)

Definisce una conversione esplicita di un valore BigInteger in un numero complesso.Defines an explicit conversion of a BigInteger value to a complex number.

Implicit(UInt64 to Complex) Implicit(UInt64 to Complex) Implicit(UInt64 to Complex) Implicit(UInt64 to Complex)

Definisce una conversione implicita di un intero senza segno a 64 bit in un numero complesso.Defines an implicit conversion of a 64-bit unsigned integer to a complex number.

Questa API non è conforme a CLS.This API is not CLS-compliant.

Implicit(UInt32 to Complex) Implicit(UInt32 to Complex) Implicit(UInt32 to Complex) Implicit(UInt32 to Complex)

Definisce una conversione implicita di un intero senza segno a 32 bit in un numero complesso.Defines an implicit conversion of a 32-bit unsigned integer to a complex number.

Questa API non è conforme a CLS.This API is not CLS-compliant.

Implicit(UInt16 to Complex) Implicit(UInt16 to Complex) Implicit(UInt16 to Complex) Implicit(UInt16 to Complex)

Definisce una conversione implicita di un intero senza segno a 16 bit in un numero complesso.Defines an implicit conversion of a 16-bit unsigned integer to a complex number.

Questa API non è conforme a CLS.This API is not CLS-compliant.

Implicit(Single to Complex) Implicit(Single to Complex) Implicit(Single to Complex) Implicit(Single to Complex)

Definisce una conversione implicita di un numero a virgola mobile a precisione singola in un numero complesso.Defines an implicit conversion of a single-precision floating-point number to a complex number.

Implicit(SByte to Complex) Implicit(SByte to Complex) Implicit(SByte to Complex) Implicit(SByte to Complex)

Definisce una conversione implicita di un byte con segno in un numero complesso.Defines an implicit conversion of a signed byte to a complex number.

Questa API non è conforme a CLS.This API is not CLS-compliant.

Implicit(Int32 to Complex) Implicit(Int32 to Complex) Implicit(Int32 to Complex) Implicit(Int32 to Complex)

Definisce una conversione implicita di un Intero con segno a 32 bit in un numero complesso.Defines an implicit conversion of a 32-bit signed integer to a complex number.

Implicit(Int16 to Complex) Implicit(Int16 to Complex) Implicit(Int16 to Complex) Implicit(Int16 to Complex)

Definisce una conversione implicita di un intero con segno a 16 bit in un numero complesso.Defines an implicit conversion of a 16-bit signed integer to a complex number.

Implicit(Double to Complex) Implicit(Double to Complex) Implicit(Double to Complex) Implicit(Double to Complex)

Definisce una conversione implicita di un numero a virgola mobile a precisione doppia in un numero complesso.Defines an implicit conversion of a double-precision floating-point number to a complex number.

Implicit(Byte to Complex) Implicit(Byte to Complex) Implicit(Byte to Complex) Implicit(Byte to Complex)

Definisce una conversione implicita di un byte senza segno in un numero complesso.Defines an implicit conversion of an unsigned byte to a complex number.

Implicit(Int64 to Complex) Implicit(Int64 to Complex) Implicit(Int64 to Complex) Implicit(Int64 to Complex)

Definisce una conversione implicita di un Intero con segno a 64 bit in un numero complesso.Defines an implicit conversion of a 64-bit signed integer to a complex number.

Inequality(Complex, Complex) Inequality(Complex, Complex) Inequality(Complex, Complex) Inequality(Complex, Complex)

Restituisce un valore che indica se due numeri complessi non sono uguali.Returns a value that indicates whether two complex numbers are not equal.

Multiply(Complex, Complex) Multiply(Complex, Complex) Multiply(Complex, Complex) Multiply(Complex, Complex)

Moltiplica due numeri complessi specificati.Multiplies two specified complex numbers.

Multiply(Double, Complex) Multiply(Double, Complex) Multiply(Double, Complex) Multiply(Double, Complex)

Moltiplica un numero reale a precisione doppia specificato per un numero complesso specificato.Multiplies a specified double-precision real number by a specified complex number.

Multiply(Complex, Double) Multiply(Complex, Double) Multiply(Complex, Double) Multiply(Complex, Double)

Moltiplica il numero complesso specificato per un numero reale a precisione doppia specificato.Multiplies the specified complex number by a specified double-precision real number.

Subtraction(Complex, Complex) Subtraction(Complex, Complex) Subtraction(Complex, Complex) Subtraction(Complex, Complex)

Sottrae un numero complesso da un altro numero complesso.Subtracts a complex number from another complex number.

Subtraction(Complex, Double) Subtraction(Complex, Double) Subtraction(Complex, Double) Subtraction(Complex, Double)

Sottrae un numero reale a precisione doppia da un numero complesso.Subtracts a double-precision real number from a complex number.

Subtraction(Double, Complex) Subtraction(Double, Complex) Subtraction(Double, Complex) Subtraction(Double, Complex)

Sottrae un numero complesso da un numero reale a precisione doppia.Subtracts a complex number from a double-precision real number.

UnaryNegation(Complex) UnaryNegation(Complex) UnaryNegation(Complex) UnaryNegation(Complex)

Restituisce l'inverso additivo di un numero complesso specificato.Returns the additive inverse of a specified complex number.

Si applica a