complex::operator*=
Mnoży liczby zespolonej docelowej przez współczynnik, który może być złożone lub być tego samego typu są części rzeczywistej i części urojonej liczby zespolonej.
template<class Other>
complex& operator*=(
const complex<Other>& _Right
);
complex<Type>& operator*=(
const Type& _Right
);
complex<Type>& operator*=(
const complex<Type>& _Right
);
Parametry
- _Right
Liczba zespolona lub liczbę, która jest tego samego typu jako parametr liczby zespolonej docelowej.
Wartość zwracana
Liczba zespolona, którą została podwojona numer określony jako parametr.
Uwagi
Operacja jest przeciążony, tak aby prostych operacji arytmetycznych mogą być wykonywane bez konwersji danych na dany format.
Przykład
// complex_op_me.cpp
// compile with: /EHsc
#include <complex>
#include <iostream>
int main() {
using namespace std;
double pi = 3.14159265359;
// Example of the first member function
// type complex<double> multiplied by type complex<double>
complex <double> cl1 ( polar ( 3.0 , pi / 6 ) );
complex <double> cr1 ( polar ( 2.0 , pi / 3 ) );
cout << "The left-side complex number is cl1 = " << cl1 << endl;
cout << "The right-side complex number is cr1 = " << cr1 << endl;
complex <double> cs1 = cl1 * cr1;
cout << "Quotient of two complex numbers is: cs1 = cl1 * cr1 = "
<< cs1 << endl;
// This is equivalent to the following operation
cl1 *= cr1;
cout << "Quotient of two complex numbers is also: cl1 *= cr1 = "
<< cl1 << endl;
double abscl1 = abs ( cl1 );
double argcl1 = arg ( cl1 );
cout << "The modulus of cl1 is: " << abscl1 << endl;
cout << "The argument of cl1 is: "<< argcl1 << " radians, which is "
<< argcl1 * 180 / pi << " degrees." << endl << endl;
// Example of the second member function
// type complex<double> multiplied by type double
complex <double> cl2 ( polar ( 3.0 , pi / 6 ) );
double cr2 = 5.0;
cout << "The left-side complex number is cl2 = " << cl2 << endl;
cout << "The right-side complex number is cr2 = " << cr2 << endl;
complex <double> cs2 = cl2 * cr2;
cout << "Quotient of two complex numbers is: cs2 = cl2 * cr2 = "
<< cs2 << endl;
// This is equivalent to the following operation
cl2 *= cr2;
cout << "Quotient of two complex numbers is also: cl2 *= cr2 = "
<< cl2 << endl;
double abscl2 = abs ( cl2 );
double argcl2 = arg ( cl2 );
cout << "The modulus of cl2 is: " << abscl2 << endl;
cout << "The argument of cl2 is: "<< argcl2 << " radians, which is "
<< argcl2 * 180 / pi << " degrees." << endl;
}
Przykładowe dane wyjściowe
The left-side complex number is cl1 = (2.59808,1.5)
The right-side complex number is cr1 = (1,1.73205)
Quotient of two complex numbers is: cs1 = cl1 * cr1 = (-6.21281e-013,6)
Quotient of two complex numbers is also: cl1 *= cr1 = (-6.21281e-013,6)
The modulus of cl1 is: 6
The argument of cl1 is: 1.5708 radians, which is 90 degrees.
The left-side complex number is cl2 = (2.59808,1.5)
The right-side complex number is cr2 = 5
Quotient of two complex numbers is: cs2 = cl2 * cr2 = (12.9904,7.5)
Quotient of two complex numbers is also: cl2 *= cr2 = (12.9904,7.5)
The modulus of cl2 is: 15
The argument of cl2 is: 0.523599 radians, which is 30 degrees.
Wymagania
Nagłówek:<złożonych>
Przestrzeń nazw: std