Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- class Point {
- private:
- float a, b;
- public:
- Point() {}
- Point(float _a, float _b) {
- a = _a;
- b = _b;
- }
- Point operator + (Point p) {
- Point res(a + p.a, b + p.b);
- return res;
- }
- Point operator - (Point p) {
- Point res(a - p.a, b - p.b);
- return res;
- }
- Point operator * (Point p) {
- Point res(a * p.a, b * p.b);
- return res;
- }
- Point operator / (Point p) {
- Point res(a / p.a, b / p.b);
- return res;
- }
- Point & operator += (Point p) {
- a += p.a;
- b += p.b;
- return *this;
- }
- Point & operator -= (Point p) {
- a -= p.a;
- b -= p.b;
- return *this;
- }
- Point & operator *= (Point p) {
- a *= p.a;
- b *= p.b;
- return *this;
- }
- Point & operator /= (Point p) {
- a /= p.a;
- b /= p.b;
- return *this;
- }
- Point & operator = (Point p) {
- a = p.a;
- b = p.b;
- return *this;
- }
- bool operator < (Point p) {
- if(a < p.a && b < p.b) {
- return true;
- }
- else {
- return false;
- }
- }
- bool operator <= (Point p) {
- if(a <= p.a && b <= p.b) {
- return true;
- }
- else {
- return false;
- }
- }
- bool operator > (Point p) {
- if(a > p.a && b > p.b) {
- return true;
- }
- else {
- return false;
- }
- }
- bool operator >= (Point p) {
- if(a >= p.a && b >= p.b) {
- return true;
- }
- else {
- return false;
- }
- }
- bool operator == (Point p) {
- if(a == p.a && b == p.b) {
- return true;
- }
- else {
- return false;
- }
- }
- bool operator != (Point p) {
- if(a != p.a || b != p.b) {
- return true;
- }
- else {
- return false;
- }
- }
- Point & operator ++ () {
- a++;
- b++;
- return *this;
- }
- Point & operator ++ (int i) {
- a++;
- b++;
- return *this;
- }
- Point & operator -- () {
- a--;
- b--;
- return *this;
- }
- Point & operator -- (int i) {
- a--;
- b--;
- return *this;
- }
- friend ostream & operator << (ostream & stream, Point & p);
- friend istream & operator >> (istream & stream, Point & p);
- };
- ostream & operator << (ostream & stream, Point & p) {
- stream << p.a << " " << p.b << endl;
- return stream;
- }
- istream & operator >> (istream & stream, Point & p) {
- stream >> p.a >> p.b;
- return stream;
- }
- int main() {
- Point a;
- cin >> a;
- cout << a << endl;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment