Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

cplxops Operatoren

&pagelevel(3)&pagelevel


In diesem Abschnitt werden die grundlegenden Ein-/Ausgabe-, arithmetischen, Vergleichs- und Zuweisungsoperatoren beschrieben.


#include <complex.h>

class complex

{

public:

friend complex
friend complex
friend complex
friend complex
friend complex

friend int
friend int

void
void
void
void

operator+(complex, complex);
operator-(complex);
operator-(complex, complex);
operator*(complex, complex);
operator/(complex, complex);

operator==(complex, complex);
operator!=(complex, complex);

operator+=(complex);
operator-=(complex);
operator*=(complex);
operator/=(complex);

};

ostream&
istream&

operator<<(ostream&, complex);
operator>>(istream&, complex&);



Die Operatoren weisen den üblichen Vorrang auf. Für die folgende Beschreibung derOperatoren sind

  • x, y und z Variablen der Klasse complex.

Arithmetische Operatoren

z = x + y

Es wird ein complex-Objekt geliefert, das die arithmetische Summe der komplexenZahlen x und y darstellt.

z = -x

Es wird ein complex-Objekt geliefert, das die arithmetische Negation der komplexenZahl x darstellt.

z = x - y

Es wird ein complex-Objekt geliefert, das die arithmetische Differenz der komplexenZahlen x und y darstellt.

z = x * y

Es wird ein complex-Objekt geliefert, das das arithmetische Produkt der komplexenZahlen x und y darstellt.

z = x / y

Es wird ein complex-Objekt geliefert, das den arithmetischen Quotienten der komplexen Zahlen x und y darstellt.

Vergleichsoperatoren

x == y

Wenn die komplexe Zahl x gleich der komplexen Zahl y ist, wird eine Ganzzahl ungleich 0 geliefert. Im anderen Fall wird der Wert 0 geliefert.

x != y

Wenn die komplexe Zahl x ungleich der komplexen Zahl y ist, wird eine Ganzzahlungleich 0 geliefert. Im anderen Fall wird der Wert 0 geliefert.

Zuweisungsoperatoren

x += y

Zur komplexen Zahl x wird die komplexe Zahl y addiert und die arithmetische Summean x zugewiesen.

x -= y

Von der komplexen Zahl x wird die komplexe Zahl y abgezogen und die arithmetische Differenz an x zugewiesen.

x *= y

Die komplexe Zahl x wird mit der komplexen Zahl y multipliziert und das arithmetische Produkt an x zugewiesen.

x /= y

Von den komplexen Zahlen x und y wird der arithmetische Quotient gebildet und an xzugewiesen.

Achtung

Die Zuweisungsoperatoren erzeugen keine Werte, die in Ausdrücken verwendet werden können. Das folgende Konstrukt ist daher syntaktisch ungültig:

complex x, y, z;
x = (y += z);

Die Zeilen

x = (y + z);
x = (y == z);

sind hingegen gültig.

Ein-/Ausgabe-Operatoren

Komplexe Zahlen können mit dem Operator << ausgegeben und mit dem Operator >> eingelesen werden.

Ausgabeformat:

( Realteil, Imaginärteil)

Eingabeformat:

Eingabe            entspricht         komplexer Zahl
-----------------------------------------------------
Zahl                   |              (Zahl, 0)
(Zahl)                 |              (Zahl, 0)
(Zahl1, Zahl2)         |              (Zahl1, Zahl2)


BEISPIEL

Das folgende Programm legt die komplexen Zahlen c und d an, dividiert d durch c und gibt dann die Werte von c und d aus:

#include <iostream.h>
#include <complex.h>
main()
{
  complex c,d;
  d = complex(10.0, 11.0);
  c = complex (2.0, 2.0);
  while (norm(c) < norm(d))
  {
    d /= c;
    cout << c << " " <<d << "\n";
  }
  return 0;
}

Das Ergebnis der Programmausführung ist:

( 2, 2)  ( 5.25, 0.25)
( 2, 2)  ( 1.375, -1.25)
%  CCM0998 Verbrauchte CPU-Zeit: 0.0009 Sekunden

SIEHE AUCH


cplxcartpol, cplxerr, cplxexp, cplxtrig