Advertisement
wagner-cipriano

Implementação Classe Ponto Cartesiano em Cpp

Jun 18th, 2023
938
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.06 KB | Science | 0 0
  1. #include <iostream>
  2. #include <math.h>
  3. using namespace std;
  4.  
  5. class Ponto {
  6.   //private:
  7.     int x, y;
  8.  
  9.   public:
  10.     Ponto(int a, int b) {
  11.       x = a;
  12.       y = b;
  13.     }
  14.     void setX(int v) {x = v;}
  15.     int getX() {return x;}
  16.     void setY(int v) {y = v;}
  17.     int getY() {return y;}
  18.     bool equals(Ponto c) {
  19.       if(c.x == x  &&  c.y == y)
  20.         return true;
  21.       return false;
  22.     }
  23.     float distancia(Ponto c) {
  24.       float r;
  25.       r = sqrt(pow(x - c.x, 2) + pow(y - c.y, 2));
  26.       return r;
  27.     }
  28. };
  29.  
  30.  
  31. int main () {
  32.   int p1x, p1y, p2x, p2y;
  33.   cout << "Informe os valores de x e y do ponto 1: ";
  34.   cin >> p1x >> p1y;
  35.   cout << "Informe os valores de x e y do ponto 2: ";
  36.   cin >> p2x >> p2y;
  37.   Ponto *p = new Ponto(p1x, p1y);
  38.   Ponto *q = new Ponto(p2x, p2y);
  39.   //(*q).setX(2); (*q).setY(4);
  40.   cout << "\np(" << (*p).getX() << "," << (*p).getY() << ")\nq(" << (*q).getX() << "," << (*q).getY() << ")\n";
  41.   cout << "p equals q:  " << (*p).equals(*q) << endl;
  42.   cout << "p dist q:    " << (*p).distancia(*q) << endl;
  43.  
  44.   return 0;
  45. }
  46.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement