#include <stdio.h> 
#include "Complex.h" 

Complex::Complex(float realVal /*  = 0 */, float imaginaryVal /* = 0 */) :
  real(realVal), imaginary(imaginaryVal)
{

}

const Complex 
Complex::operator+ (const Complex& b) const
{
  const Complex &a = *this;
  float realVal = a.real + b.real;
  float imaginaryVal = a.imaginary + b.imaginary;
  return Complex(realVal, imaginaryVal);
}

const Complex  
Complex::operator* (const Complex& b) const
{
  const Complex &a = *this;
  float realVal = a.real*b.real + a.imaginary * b.imaginary;
  float imaginaryVal = a.imaginary * b.real + a.real * b.imaginary;
  return Complex(realVal, imaginaryVal);
}