Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » klasse

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
21.06.2010, 14:57 Uhr
ns



hallo,

ich habe ein kleines Programm geschrieben, das auch funktioniert, aber finde es nicht ganz elegant bzw. geschikt progtammiert... könnte jemand mir einen Ratschlag geben, wie ich die

C++:
class CPoint
{
public:
    double x;
    double y;

    CPoint()
        :   x(0),
        y(0)
    {}

    CPoint(double x, double y)
        :   x(x),
        y(y)
    {}
....

};

double f( std::vector<CPoint> points )
{
    CPoint uLeftCorner, lRigthCorner;

    std::pair<double, double> upper = upperCorner(points);
    upperLeftCorner.x = upper.first;
    upperLeftCorner.y = upper.second;

    std::pair<double, double> lower = lowerCorner(points);
   ...
       double r;
    return r;
}

std::pair<double, double> upperCorner(std::vector<CPoint> points)
{
    double min_x = points[0].x;
    double min_y = points[0].y;

    for(unsigned int i = 0; i < points.size(); i++)
    {
        min_x = min(min_x, points[i].x);
        min_y = min(min_y, points[i].y);
    }
    return std::pair<double, double> (min_x, min_y);
}

std::pair<double, double> lowerCorner(std::vector<CPoint> points)
{
    double max_x = 0.0;
    double max_y = 0.0;

    for(unsigned int i = 0; i < points.size(); i++)
    {
        max_x = max(max_x, points[i].x);
        max_y = max(max_x, points[i].y);
    }
    return std::pair<double, double> (max_x, max_y);
}


also z. b. wenn ich die punkte habe p1(1,5), p2(2,6), p3 (3,1), p4(2,4) dann mochte ich gerne zwei punkte berechnen mit P1(1, 1) und P2(3, 6) P1(X_min, y_min) und P2(x_max, y_max)


ich danke euch im voraus

Bearbeitung von 0xdeadbeef:

code-Tags repariert und durch cpp-Tags ersetzt


Dieser Post wurde am 21.06.2010 um 15:13 Uhr von ns editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: