#include <iostream.h>
#include <conio.h>
#include <complx.h>

// constructor
Complex::Complex( double real, double imaginary )
{
	setComplexNumber( real, imaginary );

} // end class Complex constructor

// add complex numbers
void Complex::addition(const Complex &a )
{
   /* Write statement to add the realPart of a to the class realPart */
   realPart += a.realPart;

   /* Write statement to add the imaginaryPart of a to the class imaginaryPart */
   imaginaryPart += a.imaginaryPart;

} // end function addition

// subtract complex numbers
void Complex::subtraction(const Complex &s )
{
   /* Write a statement to subtract the realPart of s from the class realPart */
   realPart -= s.realPart;

   /* Write a statement to subtract the imaginaryPart of s from the class imaginaryPart */
   imaginaryPart -= s.imaginaryPart;

} // end function subtraction

// print complex numbers
void Complex::printComplex()
{ 
   cout << '(' << realPart << ", " << imaginaryPart << ')';

} // end function printComplex

// set complex number
void Complex::setComplexNumber( double real, double imaginary )
{
   realPart = real;
   imaginaryPart = imaginary;

} // end function setComplexNumber

int main()
{
   Complex b( 1, 7 ), c( 9, 2 );

   b.printComplex();
   cout << " + ";
   c.printComplex();
   cout << " = ";
   b.addition( c );
   b.printComplex();

   cout << '\n';
   b.setComplexNumber( 10, 1 );   
   c.setComplexNumber( 11, 5 );
   b.printComplex();
   cout << " - ";
   c.printComplex();
   cout << " = ";
   b.subtraction( c );
   b.printComplex();
   cout << endl;

   return 0;

} // end main
