Exercice langage C: Réaliser la classe point

Réaliser une classe point permettant de manipuler un point d'un plan.on prévoira:

-un point est définit par ses coordonnées x et y (des membres privés)

-un constructeur (vous pouvez également implémenter les trois types de constructeur)

-une fonction membre déplace effectuant une translation définie par ses deux arguments dx et dy (double)

-une fonction membre affiche se contentant d'afficher les coordonnées cartésiennes du point.

-une fonction membre saisir se contentant de saisir les coordonnées cartésiennes du point.

-une fonction membre distance effectuant calculant la distance entre deux point.

-une fonction membre milieu donnant le milieu d'un segment.

On écrira séparément:

-un ficher source constituant la déclaration et la définition de la classe.

- un petit programme d’essai (main) gérant ne la classe point.

Découverte et travail des classes. Utilisation d'un constructeur et d'un destructeur.
//ficher source
#include
#include
class point
{
double x;
double y;
public:
point();
point(double,double);
point(point &);
~point();
double get_x();
double get_y();
void set_x(double x1);
void set_y(double y1);
point deplace(double dx, double dy);
void affiche();
void saisir();
double distance(point &);
point milieu(point &);
};
point::point()
{}
point::point(double a,double b)
{
x=a;
y=b;
}
point::point(point &p)
{
set_x(p.get_x());
set_y(p.get_y());
}
point::~point()
{}
double point::get_x()
{
return x;
}
double point::get_y()
{
return y;
}
void point::set_x(double a)
{
x=a;
}
void point::set_y(double a)
{
y=a;
}
point point::deplace(double dx,double dy)
{

set_x(get_x()+dx);

set_y(get_y()+dy);
return *this;

}
double point::distance (point &p)
{
double p1,x1,x2;
x1=(get_x()-p.get_x())*(get_x()-p.get_x());
x2=(get_y()-p.get_y())*(get_y()-p.get_y());
//p1=sqrt(((get_x()-p.x)*((get_x()-p.x))+((get_y()-p.y)*(get_y()-p.y)));
p1=sqrt(x1+x2);
return p1;
}
void point::affiche()
{
cout"les coordonnées sont:"endl;
cout"x="get_x()endl;
cout"y="get_y()endl;
}
void point::saisir()
{
cout"donnée les coordonnées:"endl;
cout"x="endl;
cin>>x;
cout"y="endl;
cin>>y;
}
point point::milieu(point &p)
{
point p1;
p1.x=(get_x()+p.get_x())/2;
p1.y=(get_y()+p.get_y())/2;
return p1;
}
//programme d'essai(main)
#include
#include "pointt.h"
void main()
{point p(1,1);
point x(5,5);
point c;
p.affiche();
p.deplace(5,5);
p.affiche();
cout"la distance est : "p.distance(x);
c=p.milieu(x);
c.affiche();
}

Article publié le 18 Février 2012 Mise à jour le Lundi, 07 Novembre 2022 23:14 par Babachekhe Mohamed