// Complex.cpp

/*
 * Hier bitte Ihre FHA-E-Mail-Adresse angeben:
 *       ?????.?????@stud.fh-aargau.ch
 */

#include <iostream>
#include <cmath>
using namespace std;


class Complex {
	int re;
	int im;
public:
  Complex(int re = 0, int im = 0) : re(re), im(im) { }

  friend ostream& operator<<(ostream& os, const Complex& complex) {
   	if (complex.re == 0 && complex.im == 0) return os << 0;
  	if (complex.re != 0) {
  		os << complex.re;
  		if (complex.im == 0) return os;
  	  if (complex.im == 1) return os << " + i";
  	  if (complex.im == -1) return os << " - i";
  	  if (complex.im > 0) os << " + ";
  	  if (complex.im < 0) os << " - ";
  	}
  	else {
  	  if (complex.im == 1) return os << "i";
  	  if (complex.im == -1) return os << "-i";
  	  if (complex.im < 0) os << "-";
  	}
  	return os << abs(complex.im) << "*i";
  }
};
