***************************************************************
// complex.h
#ifndef COMPLEX_H
#define COMPLEX_H

/* Write class definition for Complex */
class Complex {
     private:
	double realPart;
	double imaginaryPart;
     public:
	Complex(double, double);
	void setComplexNumber(double, double);
	void printComplex();
}

#endif // COMPLEX_H
***************************************************************
// complexm.cpp
// member function definitions for class Complex
#include <iostream>

using std::cout;

#include "complex.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
***************************************************************
// complex.cpp

#include <iostream>

using std::cout;
using std::endl;


#include "complex.h"

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
***************************************************************
نتيجة تنفيذ البرنامج كما ستظهر على الشاشة:

(1, 7) + (9, 2) = (10, 9)
(10, 1) - (11, 5) = (-1, -4)
