AYUDARME POR FAVOR EN ESTE PROGRAMA CHORRA

carbecar
25 de Octubre del 2007
necesito escribir el valor de la suma de las distancias netre cada 2 puntos consecutivos y no se hacerlo. El codigo que he escrito es el siguiente:
// includes
//=================================================
#include <iostream>
#include <cmath>
#include <string>

using namespace std;

//=================================================
// constantes
//=================================================

//=================================================
// clase Punto
//=================================================
class Punto {

private:

double x; // coordenada x
double y; // coordenada y

public:

//-------------------------------------------------
// constructor por defecto
//-------------------------------------------------
Punto () {
x = 0.0;
y = 0.0;
} // ()

//-------------------------------------------------
// constructor con parametros para guardarlos
//-------------------------------------------------
Punto (const double xv, const double yv) {
x = xv;
y = yv;
} // ()

//-------------------------------------------------
// devuelve el valor de la coordenada x
//-------------------------------------------------
double getX () const {
return x;
} // ()

//-------------------------------------------------
// devuelve el valor de la coordenada y
//-------------------------------------------------
double getY () const {
return y;
} // ()

//-------------------------------------------------
// calcula y devuelve la distancia de un punto a
// nosotros
//-------------------------------------------------
double distancia (const Punto altre) const {
double base;
double alt;

base = altre.getX() - getX ();
alt = altre.getY() - getY ();
return sqrt (base*base + alt*alt);
} // ()

//-------------------------------------------------
// devuelve un punto suma de nosotros y otro punto
//-------------------------------------------------
Punto suma (const Punto altre) const {
Punto res (getX() + altre.getX(),
getY() + altre.getY()
);

return res;
} // ()

}; // class

//=================================================
// funcion main ()
//=================================================
int main () {

Punto origen;
Punto lejano;
Punto SM;
Punto SS;

double x,r;
double y;
double t;
double s;

int n;
int i=1;
cout<<"¿Cuantos Puntos quieres?"<<endl;
cin>>n;
cout<<" Mi punto inicial es el : "<<origen.getX()<<","<<origen.getY()<<endl;
while(i<=n) {

cout<<" "<<endl;
cout<<" Punto numero: "<<n<<endl;
cout<<"-------------------------"<<endl;
cout<<" "<<endl;
cout<<"Dime la coordenada de x "<<endl;
cin>>x;
cout<<"Dime la coordenada de y "<<endl;
cin>>y;
n--;

Punto nuevo(x,y);
SM=lejano.suma(nuevo);
x=SM.getX();
y=SM.getY();
t=origen.distancia (nuevo);
s=origen.distancia (lejano);
if (t>s){
lejano=nuevo;
}
cout<<"El punto + lejano es el: ("<<lejano.getX()<<","<<lejano.getY()<<")"<<endl;




}
SS=origen.suma(nuevo);
while(SS==SM){
cout<<"la suma de los 2 ultimos puntos es: "<<SM.getX()<<","<<SM.getY()<<endl;



cin>>x;
return 0;
}


// ()