JAVA Objektorientiert

also wenn ich dich richtig verstehe möchtest du jeden punkt mit jedem punkt vergleichen und die kürzeste entfernung ausgeben ?
Code:
double d = Double.MAX_VALUE; // anfangs auf "unendlich"

for (int i = 0; i < orte.length; i++){

for (int s = 0; s < orte.length; s++){
if (i != s){ // um nicht den punkt mit sich selbst zu vergleichen

// hier die eigentliche berechnung
double dNeu = Math.sqrt ((orte[i].y() - orte[i].x()) * (orte[i].y() - orte[i].x()) + (orte[s].y() - orte[s].x()) * (orte[s].y() - orte[s].x()));

if (dNeu < d){
d = dNeu;
// + merken welche punkte du eben vergleichen hast
}

}
}

}

System.out.println("Kürzeste Entfernung zwischen ... =" + d);
 
Bitte benutzt doch die Java-Tags (wie schön in der Sig von MiMi gezeigt) oder wenigstens die Code-Tags!

Zum Thema:
Java:
Ort[] orte = new Ort[0];

Du weißt schon, dass du damit ein Array mit der Größe 0 initializierts. Daher kannst du da keine Inhalte einfügen. Daher musst du entweder die Anzahl der Daten die du einfügen willst vorher schon kennen oder eine Liste verwenden, die sich dynamisch vergrößert.

P.S.: Man könnte auch den Titel ändern, da es nicht um die Objektorientierung von Java geht, sondern um das Berechnen von der Entfernung von Punkten.
 
Zuletzt bearbeitet:
1. Ja, das sich einige immer noch dazu rumkriegen lassen unformatierten Code anzuschauen, bleibt mir ein Raetsel
2. @Hans P einfach ne "Loesung" zu posten, hilft net wirklich, sondern nur fuer den Moment.
 
Zurück