Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- template <typename R,typename I> class Zespolona;
- template <typename M,typename N>
- ostream& operator<< (ostream &,const Zespolona<M,N> &);
- template <typename R,typename I>
- class Zespolona
- {
- R rez;
- I imz;
- public:
- Zespolona():rez(0),imz(0)
- {}
- Zespolona(R r, I i):rez(r),imz(i)
- {}
- Zespolona<R,I> operator+ (const Zespolona<R,I> &z) const
- {
- return Zespolona<R,I>(rez+z.rez,imz+z.imz);
- }
- Zespolona<R,I> operator*(const Zespolona<R,I> &z) const
- {
- return Zespolona<R,I>(rez*z.rez + imz*z.imz, rez*z.imz - imz*z.imz);
- }
- Zespolona<double,double> operator*(const double &l) const
- {
- return Zespolona<double,double>(rez*l,imz*l);
- }
- friend ostream& operator<< (ostream &,const Zespolona<M,N> &);
- };
- template <typename M,typename N>
- ostream& operator<<(ostream &os,const Zespolona<M,N> &x)
- {
- os << x.rez << "+" << x.imz << "i" << endl;
- return os;
- }
- int main()
- {
- system("pause");
- return 0;
- }
Add Comment
Please, Sign In to add comment