Hallo,
in meinem Studium hab ich das Fach Programmieren. Dort haben wir uns unter anderem mit dem Thema Klassen beschäftigt. Aber die Aufgaben die mir hingeklatscht worden sind, sind zu groß und zu kompliziert, weshalb ich das Thema Klassen nicht richtig verstehen konnte. Was ich brauche sind Einführungs Aufgaben, wo alles erklärt wird. Mir ist völlig klar das ich selber Gas geben muss, aber ohne vernünftige Einführung ist schwer.
Zum Beispiel hab ich diese Aufgabe gefunden, welche ich nicht verstehe: "
Deklarieren und implementieren Sie die Klasse Punkt2DK. Die Klasse Punkt2DK soll folgende Funktionalität erfüllen:
• Erstellung eines Objekts mit Standardwerten (Koordinaten jeweils Null)
• Erstellung eines Objekts mit definierten Werten (Koordinaten x und y)
• Methode zur Ausgabe der Parameter im Format "(x/y)"
• Methoden zum Auslesen und Setzen der Koordinaten x bzw. y (get-/set-Methoden)
• Methode zur Berechnung und Rückgabe des Abstands zum Ursprung Berechnung des Abstands zum Ursprung:
22dxy=+
• Methode zur Berechnung und Rückgabe des Winkels ϕ zur Abszisse (x-Achse)
Berechnung des Winkels zur Abszisse über den Radiant:
arctanyxϕ=*180/π
Verifizieren Sie die korrekte Funktionalität der Klasse, d.h. aller Konstruktoren und Methoden."
Und das Programm dazu:
class Punkt2DK
{
private:
double x,y;
public:
Punkt2DK();
Punkt2DK(double P_x, double P_y);
void Ausgabe();
double get_x();
double get_y();
void set_xy(double a, double b);
double Norm();
double Winkel();
};
int main()
{
Punkt2DK P1;
P1.Ausgabe();
P1.get_x();
P1.get_y();
P1.set_xy(5,3);
P1.Ausgabe();
cout << "Norm ist " << P1.Norm() <<endl;
P1.Winkel();
return 0;
}
Punkt2DK:: Punkt2DK()
{
x=0;
y=0;
}
Punkt2DK:: Punkt2DK(double P_x, double P_y)
{
x = P_x;
y = P_y;
}
void Punkt2DK::Ausgabe()
{
cout << "(" << x << "/" << y << ")" <<endl;
}
double Punkt2DK::get_x()
{
return x;
}
double Punkt2DK::get_y()
{
return y;
}
void Punkt2DK::set_xy(double a, double b)
{
x=a;
y=b;
}
double Punkt2DK::Norm()
{
double c,e,d;
c = get_x();
e = get_y();
d = sqrt(c*c+e*e);
return d;
}
double Punkt2DK::Winkel()
{
double PI,Q;
PI = 3.141;
y = get_y();
x = get_x();
Q = (atan (y/x))*(180/PI);
cout << "Der Winkel ist " << Q << "grad" << endl;
}
Was in class Punkt2DK{ steht konnte ich ungefähr verstehen, aber was dann im int main steht, ist für mich unschlüssig und die anderen sind wahrscheinlich Funktionen, wo dann die Aufgaben in der Klasse ausgeführt werden.
Könnt ihr mir diese Aufgabe erklären oder mir Einführungs Aufgaben zeigen oder das einfachste Klassen Programm mit private und Public schreiben und mir erklären, damit ich das verstehe und ich mich dann auch in andere Aufgaben reinarbeiten kann?
Danke
in meinem Studium hab ich das Fach Programmieren. Dort haben wir uns unter anderem mit dem Thema Klassen beschäftigt. Aber die Aufgaben die mir hingeklatscht worden sind, sind zu groß und zu kompliziert, weshalb ich das Thema Klassen nicht richtig verstehen konnte. Was ich brauche sind Einführungs Aufgaben, wo alles erklärt wird. Mir ist völlig klar das ich selber Gas geben muss, aber ohne vernünftige Einführung ist schwer.
Zum Beispiel hab ich diese Aufgabe gefunden, welche ich nicht verstehe: "
Deklarieren und implementieren Sie die Klasse Punkt2DK. Die Klasse Punkt2DK soll folgende Funktionalität erfüllen:
• Erstellung eines Objekts mit Standardwerten (Koordinaten jeweils Null)
• Erstellung eines Objekts mit definierten Werten (Koordinaten x und y)
• Methode zur Ausgabe der Parameter im Format "(x/y)"
• Methoden zum Auslesen und Setzen der Koordinaten x bzw. y (get-/set-Methoden)
• Methode zur Berechnung und Rückgabe des Abstands zum Ursprung Berechnung des Abstands zum Ursprung:
22dxy=+
• Methode zur Berechnung und Rückgabe des Winkels ϕ zur Abszisse (x-Achse)
Berechnung des Winkels zur Abszisse über den Radiant:
arctanyxϕ=*180/π
Verifizieren Sie die korrekte Funktionalität der Klasse, d.h. aller Konstruktoren und Methoden."
Und das Programm dazu:
class Punkt2DK
{
private:
double x,y;
public:
Punkt2DK();
Punkt2DK(double P_x, double P_y);
void Ausgabe();
double get_x();
double get_y();
void set_xy(double a, double b);
double Norm();
double Winkel();
};
int main()
{
Punkt2DK P1;
P1.Ausgabe();
P1.get_x();
P1.get_y();
P1.set_xy(5,3);
P1.Ausgabe();
cout << "Norm ist " << P1.Norm() <<endl;
P1.Winkel();
return 0;
}
Punkt2DK:: Punkt2DK()
{
x=0;
y=0;
}
Punkt2DK:: Punkt2DK(double P_x, double P_y)
{
x = P_x;
y = P_y;
}
void Punkt2DK::Ausgabe()
{
cout << "(" << x << "/" << y << ")" <<endl;
}
double Punkt2DK::get_x()
{
return x;
}
double Punkt2DK::get_y()
{
return y;
}
void Punkt2DK::set_xy(double a, double b)
{
x=a;
y=b;
}
double Punkt2DK::Norm()
{
double c,e,d;
c = get_x();
e = get_y();
d = sqrt(c*c+e*e);
return d;
}
double Punkt2DK::Winkel()
{
double PI,Q;
PI = 3.141;
y = get_y();
x = get_x();
Q = (atan (y/x))*(180/PI);
cout << "Der Winkel ist " << Q << "grad" << endl;
}
Was in class Punkt2DK{ steht konnte ich ungefähr verstehen, aber was dann im int main steht, ist für mich unschlüssig und die anderen sind wahrscheinlich Funktionen, wo dann die Aufgaben in der Klasse ausgeführt werden.
Könnt ihr mir diese Aufgabe erklären oder mir Einführungs Aufgaben zeigen oder das einfachste Klassen Programm mit private und Public schreiben und mir erklären, damit ich das verstehe und ich mich dann auch in andere Aufgaben reinarbeiten kann?
Danke