Advertisement
salahgo

Constructeurs & Destructeurs

Oct 24th, 2013
55
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.68 KB | None | 0 0
  1. #include<iostream>
  2. #include<cmath>
  3. using namespace std ;
  4.  
  5. class Point {
  6.     private:
  7.     float abs;
  8.     float ord;
  9.     char pnt;
  10.     public:
  11.     Point(char, float,float);
  12.     Point();
  13.     Point(const Point &p);
  14.     void deplace(float dx,float dy);
  15.     void affiche();
  16.     float GetAbs() {return abs;};
  17.     float GetOrd();
  18.     char GetPnt();
  19.     ~Point();
  20.     };
  21.  
  22.     Point::Point(char a,float x,float y)
  23. {
  24.      pnt= a;
  25.      abs= x;
  26.      ord= y;
  27.      cout<<"construction point "<<a<<" d'abscisse "<<x<<" et d'ordonnee "<<y<<" avec le constructeur parametre"<<endl;
  28.  }
  29.  
  30.     Point::Point()
  31. {
  32.      pnt= 'o';
  33.      abs= 0;
  34.      ord= 0;
  35.  }
  36.     Point::Point(const Point &p)
  37. {
  38.     pnt= p.pnt;
  39.      abs= p.abs;;
  40.      ord= p.ord;
  41. }
  42.     Point::~Point()
  43. {
  44.     cout<<"destruction du point "<<pnt<<endl;
  45. }
  46.  
  47.  
  48.  void Point::deplace(float dx, float dy)
  49.  {
  50.      abs=abs+dx;
  51.      ord=ord+dy;
  52.  }
  53.  
  54.  void Point::affiche()
  55.  {
  56.      cout<<"le point "<<pnt<<" a pour coordonnées:("<<abs<<","<<ord<<")"<<endl;
  57.  }
  58.  
  59. inline float Point::GetOrd() {
  60.     return ord;
  61.     }
  62. char Point::GetPnt(){
  63.     return pnt;
  64.     }
  65.  
  66.  float distant(Point t1, Point t2)
  67.  {
  68.      float d,x1,x2,y1,y2;
  69.      x1=t1.GetAbs();
  70.      x2=t2.GetAbs();
  71.      y1=t1.GetAbs();
  72.      y2=t2.GetAbs();
  73.      d = sqrt(pow((x1-x2),2)+pow((y1-y2),2));
  74.      return d;
  75.  }
  76.  int main ()
  77.  {
  78.  
  79.      Point p1('p',1,2);
  80.      Point p2('r',2,4);
  81.      Point p5(p2);
  82.      p1.affiche();
  83.      p2.affiche();
  84.      p5.affiche();
  85.      cout<<"distance entre "<<p1.GetPnt()<<" et "<<p2.GetPnt()<<" est "<<distant(p1,p2)<<endl;
  86.      p1.deplace(3,4);
  87.      p2.deplace(0,5);
  88.      p1.affiche();
  89.      p2.affiche();
  90.      return 0;
  91.  }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement