Hallo, ich möchte wirklich nicht stören, doch habe ich ein schwerwiegendes Verständnis Problem bei einer Aufgabe die ich gerade Programmiere. Folgende Aufgabenstellung ist gegeben :
Realisieren Sie die Klassen Punkt und Dreieck im Package de.pdbm.programmierung.aufgabe2. Die Klasse
Punkt deniert die folgenden Methoden/Konstruktoren.
public Punkt ( double x, double y)
public double entfernung ( Punkt p)
public boolean gleich ( Punkt p, double epsilon )
public Punkt verschiebe ( double dx , double dy)
public double getX ()
public double getY ()
Punkte sollen unveranderlich sein und besitzten daher keine Setter. Auch die Methode verschiebe verschiebt
nicht den aktuellen Punkt, sondern liefert einen neuen, verschobenen Punkt zuruck. Unveranderliche Klassen
nennt man im Englischen immutable. Die Klasse String ist hierfur ein prominentes Beispiel. Als Entfernung
wird der euklidische Abstand berechnet. Die Gleichheit zweier Punkte basiert auch auf diesem Abstand.
Die Klasse Dreieck ist ebenfalls unveranderlich. Implementieren Sie die folgenden Methoden/Konstruktoren.
public Dreieck ( Punkt p1 , Punkt p2 , Punkt p3)
public double umfang ()
public double flaeche ()
public Dreieck verschiebe ( double dx , double dy)
public Punkt getP1 ()
public Punkt getP2 ()
public Punkt getP3 ()
Bei verschiedenen Berechnungen konnten Ihnen die Methoden Math.hypot() und Math.sqrt() bei der
Arbeit helfen. Ein guter Tipp fur die Flachenbereichnung eines Dreiecks ist der Satz des Heron.
Hier ist meine Klasse Punkt:
Und hier die Klasse Dreieck:
Mein Problem ist wie ich die Objekte sprich p1 ... p3 addieren kann um zB den Umfang zu berechnen. F[r eine kleine Hilfestellung waere ich sehr verbunden.
mfg Araschi
Realisieren Sie die Klassen Punkt und Dreieck im Package de.pdbm.programmierung.aufgabe2. Die Klasse
Punkt deniert die folgenden Methoden/Konstruktoren.
public Punkt ( double x, double y)
public double entfernung ( Punkt p)
public boolean gleich ( Punkt p, double epsilon )
public Punkt verschiebe ( double dx , double dy)
public double getX ()
public double getY ()
Punkte sollen unveranderlich sein und besitzten daher keine Setter. Auch die Methode verschiebe verschiebt
nicht den aktuellen Punkt, sondern liefert einen neuen, verschobenen Punkt zuruck. Unveranderliche Klassen
nennt man im Englischen immutable. Die Klasse String ist hierfur ein prominentes Beispiel. Als Entfernung
wird der euklidische Abstand berechnet. Die Gleichheit zweier Punkte basiert auch auf diesem Abstand.
Die Klasse Dreieck ist ebenfalls unveranderlich. Implementieren Sie die folgenden Methoden/Konstruktoren.
public Dreieck ( Punkt p1 , Punkt p2 , Punkt p3)
public double umfang ()
public double flaeche ()
public Dreieck verschiebe ( double dx , double dy)
public Punkt getP1 ()
public Punkt getP2 ()
public Punkt getP3 ()
Bei verschiedenen Berechnungen konnten Ihnen die Methoden Math.hypot() und Math.sqrt() bei der
Arbeit helfen. Ein guter Tipp fur die Flachenbereichnung eines Dreiecks ist der Satz des Heron.
Hier ist meine Klasse Punkt:
Java:
package de.pdbm.programmierung.aufgabe2;
public class Punkt {
public double x=0.0;
public double y=0.0;
public Punkt ( double x, double y){
// Konstruktor
this.x = x;
this.y = y;
}
public double entfernung(Punkt p){
return Math.hypot(x - p.getX(),y-p.getY());
}
public boolean gleich(Punkt p, double epsilon){
//entfernung vergleichen
return false;
}
public Punkt verschiebe(double dx , double dy){
Punkt p = new Punkt(dx+x,dy+y);
return p;
}
// GETTER
public double getX(){
return x;
}
public double getY(){
return y;
}
public static void main(String[] args) {
Punkt p = new Punkt(2.3,5.5);
Punkt p3 = p.verschiebe(2.0,2.0);
System.out.println(p3.getX() + " " + p3.getY());
}
}
Und hier die Klasse Dreieck:
Java:
package de.pdbm.programmierung.aufgabe2;
public class Dreieck {
public Punkt p1;
public Punkt p2;
public Punkt p3;
public Dreieck (Punkt p1 , Punkt p2 , Punkt p3){
this.p1 = p1;
this.p2 = p2;
this.p3 = p3;
}
public double umfang (){
double u = 0.0;
Dreieck dre = new Dreieck(p1, p2, p3);
u = (p1.add(p2);
return u;
}
public double add(){
return 0;
}
public double flaeche (){
return 0;
}
public Dreieck verschiebe (double dx , double dy){
return null;
//Dreieck p = new Dreieck(dx,dy);
//Dreieck p = new dreieck;
//return;
}
// GETTER
public Punkt getP1 (){
return p1;
}
public Punkt getP2 (){
return p2;
}
public Punkt getP3 (){
return p3;
}
}
Mein Problem ist wie ich die Objekte sprich p1 ... p3 addieren kann um zB den Umfang zu berechnen. F[r eine kleine Hilfestellung waere ich sehr verbunden.
mfg Araschi