第七周任务(3)第二种算法
来源:互联网 发布:安卓http如何获取数据 编辑:程序博客网 时间:2024/05/22 03:40
#include <iostream> #include <cmath> using namespace std; template <class numtype> class Comple { private: numtype real; numtype imag; public: Comple(){real = 0;imag = 0;} Comple(numtype r,numtype i){real = r;imag = i;} Comple add(Comple &c2) ; Comple subtract(Comple &c2); Comple multiply(Comple &c2); Comple divide(Comple &c2); void display() ; }; template <class numtype>Comple<numtype> Comple<numtype>::add(Comple &c2) { Comple c; c.real=real+c2.real; c.imag=imag+c2.imag; return c; }template <class numtype>Comple<numtype> Comple<numtype>:: subtract(Comple &c2) { Comple c; c.real=real-c2.real; c.imag=imag-c2.imag; return c; } template <class numtype>Comple<numtype> Comple<numtype>:: multiply(Comple &c2) { Comple c; c.real=real*c2.real; c.imag=imag*c2.imag; return c; } template <class numtype> Comple<numtype> Comple<numtype>:: divide(Comple &c2) { Comple c; c.real=real/c2.real; c.imag=imag/c2.imag; return c; } template <class numtype>void Comple<numtype>::display() { cout<<"("<<real<<","<<imag<<"i)"<<endl; } int main() { Comple<int> c1(3,4); Comple<int>c2(5,-10); Comple<int>c3; c3=c1.add(c2); cout<<"c1+c2="; c3.display( ); c3=c1.subtract(c2); cout<<"c1-c2="; c3.display( ); c3=c1.multiply(c2); cout<<"c1*c2="; c3.display( ); c3=c1.divid(c2) cout<<"c1/c2="; c3.display( ); Comple<double> c4(3.1,4.4); Comple<double>c5(5.34,-10.21); Comple<double>c6; c6=c4.add(c5); cout<<"c4+c5="; c6.display( ); system("pause"); return 0; }