Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <math.h>
- #include <string>
- using namespace std;
- class Complex{
- float r;
- float i;
- public:
- Complex(float r = 0, float i = 0)
- : r(r)
- , i(i)
- {}
- bool operator> (const Complex& c) {
- return sqrt(r * r + i * i) > sqrt(c.r * c.r + c.i * c.i);
- }
- friend ostream& operator<< (ostream &out, const Complex &c);
- friend istream& operator>> (istream &in, Complex& c);
- };
- ostream& operator<< (ostream &out, const Complex &c)
- {
- out << c.r << " + " << c.i << "i\n";
- return out;
- }
- istream& operator>> (istream &in, Complex &c)
- {
- in >> c.r >> c.i;
- return in;
- }
- template <class T>
- T GetMax(T a, T b) {
- if (a > b)
- return a;
- return b;
- }
- int main() {
- int i = 5, j = 6, k;
- long l = 10, m = 5, n;
- k = GetMax<int>(i, j);
- n = GetMax<long>(l, m);
- cout << k << endl;
- cout << n << endl;
- //
- Complex c1;
- Complex c2;
- cin >> c1;
- cin >> c2;
- cout << GetMax<Complex>(c1, c2);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement