Wer kann mir helfen? Ich muss an einem Javakurs teilnehmen, habe aber so gut wie keine Ahnung vom Programmieren und die Erklärung im Kurs ist für Anfänger wie mich zu schwer. Ich muss eine Aufgabe erledigen, an der ich schon ziemlich lange drangesessen habe, aber bei der ich zu keiner Lösung komme. Kann mir vielleicht jemand von euch helfen?
Also, es geht darum, dass man eine Menge von Punkten hat. Der erste Punkt ist mit dem zweiten verbunden, der zweite mit dem dritten,... und der vorletzte mit dem letzten, sodass eine (nicht geschlossene) Zickzacklinie (Polylinie) entsteht. Man soll die Polylinie in einer ArrayList organisieren und Methoden zur Rückgabe des ersten, letzten und der Zwischenpunkte schreiben. Außerdem soll es eine Methode geben, die die Länge der Zickzacklinie berechnet. Die Polylinie soll zunächst allgemein in einer Klasse definiert werden. Danach soll man eine Anwendung schreiben, in der die Polylinie in einem konkreten Beispiel getestet wird.
In der ersten Klasse wird definiert, was ein Punkt ist.
Diese Klasse funktioniert.
In der zweiten Klasse wird defininiert, wie die Distanz zwischen 2 Punkten errechnet wird.
In der 3. Klasse wird definiert, was eine Polylinie ist.
Die ersten Methoden sind OK. Nur die Längenberechnung klappt irgendwie nicht. Die ersten beiden Klassen sind ohne Probleme kompiliert worden.
Kann mir jemand helfen? Ich wäre für Hilfe wirklich sehr dankbar!
Also, es geht darum, dass man eine Menge von Punkten hat. Der erste Punkt ist mit dem zweiten verbunden, der zweite mit dem dritten,... und der vorletzte mit dem letzten, sodass eine (nicht geschlossene) Zickzacklinie (Polylinie) entsteht. Man soll die Polylinie in einer ArrayList organisieren und Methoden zur Rückgabe des ersten, letzten und der Zwischenpunkte schreiben. Außerdem soll es eine Methode geben, die die Länge der Zickzacklinie berechnet. Die Polylinie soll zunächst allgemein in einer Klasse definiert werden. Danach soll man eine Anwendung schreiben, in der die Polylinie in einem konkreten Beispiel getestet wird.
In der ersten Klasse wird definiert, was ein Punkt ist.
Code:
class Point
{
int x, y; //Variablen die für die ganze Klasse gelten
Point(int xIn , int yIn)
{ x= xIn; y= yIn;}
int getX()
{return x;}
int getY()
{return y;}
void setX(int xIn)
{x= xIn;}
void setY(int yIn)
{y= yIn;}
}
In der zweiten Klasse wird defininiert, wie die Distanz zwischen 2 Punkten errechnet wird.
Code:
public class Distance
{ Point point1;
Point point2;
double distance;
double distance(Point point1, Point point2)
{
this.point1 = point1;
this.point2 = point2;
double distance;
distance = java.lang.Math.sqrt
(((point1.getX() - point2.getX())*(point1.getX() - point2.getX()))
+((point1.getY() - point2.getY())*(point1.getY() - point2.getY())));
return distance;
}
}
Code:
import java.util.*;
public class Polyline
{
ArrayList pointlist;
//Konstruktor der Polylinie
Polyline()
{};
//Instanzen vom Objekttyp Point hinzufügen
void addPoint(Point punkt)
{pointlist.add(punkt);}
//Punkt ausgeben
Point getPoint(int index)
{return (Point)pointlist.get(index);}
//Punkt ausgeben
Point getFirstPoint()
{return (Point)pointlist.get(0);}
//letzten Punkt ausgeben
Point getLastPoint()
{return (Point)pointlist.get(pointlist.size());}
//Länge der Polylinie berechnen
/*double length(ArrayList pointlist)
{
this.pointlist = pointlist;
int i = 0;
double length = 0;
double partLength;
Point point1;
Point point2;
while (i < (pointlist.size() - 1))
{
point1 = (Point)pointlist.get(i);
point2 = (Point)pointlist.get(i+1);
partLength = distance(point1, point2);
length = length + partLength;
}
return length;
}
Kann mir jemand helfen? Ich wäre für Hilfe wirklich sehr dankbar!