GVA SUPPORT

Відповідь на запитання № 1302946526
Text:
	ФІО = Руденко Віктор

 Запитання:#include<iostream>
#include<math.h>
using namespace std;
class Complex
 {
      double real;
      double image;
      public:
             Complex () {};
             Complex (double r) { real = r; image = 0; }
             Complex(double r, double i) { real = r, image = i; }
             ~Complex () {}
             Complex operator*(Complex &);
             //friend ostream &operator<<(ostream &, Complex &);
             friend istream &operator>>(istream &, Complex &);
 Complex Complex::operator*(Complex &fp1)// ту ошибку выдает
{ 
double i, j;
    i = real * fp1.real - image * fp1.image;
    j = real * fp1.image + fp1.real * image;
   fp1.real = i;
   fp1.image = j;
   return fp1;
}
istream &operator>>(istream &fi, Complex &fp)
{
    cout << "Input real part of number: ";
   fi >> fp.real;
   cout << "Input image part of number: ";
   fi >> fp.image;
   return fi;
};
void main() 
{
     Complex c1, c2;
     cin >> c1;
     cin >> c2;
     cout << "c1 = " << c1;
     cout << "c2 = " << c2;
     cout << "c1 * c2 = " << (c1 * c2);
     system ("PAUSE");
     return 0;
}


короче нужно создать клас для комплексных чисел+ функцию которая будет делать умножения 1 комплексного на другое.. я вот написал.. но оно не хочет работать.. зарание спасибо...

====================================


 ANSWER ====================================

#include<iostream>
#include<math.h>
using namespace std;
class Complex
 {
      double real;
      double image;
      public:
             Complex () {}
             Complex (double r) { real = r; image = 0; }
             Complex(double r, double i) { real = r, image = i; }
             void Enter(){
                  cout<<"Enter real  = "; cin>>real;
                  
                  cout<<"Enter image = "; cin>>image;
             }
             void Show(){
                  cout<<" Real  = "<<real<<" ; image = "<<image<<endl;
             }
      Complex Complex :: operator + (Complex b){

                Complex temp;
                temp.real=real+b.real;
                temp.image=image+b.image;
                return temp;
      }
      Complex Complex :: operator - (Complex b){

                Complex temp;
                temp.real=real-b.real;
                temp.image=image-b.image;
                return temp;
      }
      Complex Complex :: operator * (Complex b){

                Complex temp;
                temp.real=real*b.real-image*b.image;
                temp.image=real*b.image+image*b.real;
                return temp;
      }
};
int main() 
{
     Complex c1, c2, c3;
     c1.Enter();
     c2.Enter();
     c1.Show();
     c2.Show();  
     cout<<endl;    
     cout<<endl;
     c3=c1+c2;
     c3.Show();
     c3=c1-c2;
     c3.Show();
     c3=c1*c2;
     c3.Show();          
     c3=c1/c2;
     c3.Show();     
     system ("PAUSE");
     return 0;
}

/*
короче нужно создать клас для комплексных чисел+ функцию которая будет делать умножения 1 комплексного на другое.. я вот написал.. но оно не хочет работать.. зарание спасибо...

Гобаченко В.А. Для деления напишешь сам по аналогии, проверь результаты вычислений
073511052011
====================================
*/



 END of ANSWER ====================================

	
Ваша відповідь