Hallöchen liebe Java-Gemeinde.
Im Rahmen meines Studiums muss ich eine Aufgabe mittels Java lösen. Folgend: Eine Drohne soll in einem definierten Arbeitsfeld verschiedene Koordinaten anfliegen und zum Ende soll meine Porgramm die zurückgelegte Strecke, als auch die Anzahl der "Wandüberquerungen" wiedergeben. Den Gesamtbereich und die Koordinaten lese ich aus einer Datei ein.
Und nun zu meinem Problem, die "Wandüberquerungen": Am Anfang des Programmes soll abgefragt werden, wie viele Wände in dem Arbeitsfeld stehen, also in wie viele gleich große Bereiche das Feld aufgeteilt werden soll. Soweit so gut. Aber wie genau lege ich die Wände bzw. die entstandenen Bereiche am logischten fest, sodass ich im nachhinein ganz einfach mit einer Methode die Wandüberquerungen, als auch die zurückgelegte Strecke aufsummieren kann ?
Ich steh schon seid mehreren Tagen auf dem Schlauch und hoffe, dass diese Frage nicht ein zu großes Fass aufmacht.
SO mein Erzeugnis bis hier hin:
Ich danke schonmal für eure Beihilfe.
Gruß schmatti
Im Rahmen meines Studiums muss ich eine Aufgabe mittels Java lösen. Folgend: Eine Drohne soll in einem definierten Arbeitsfeld verschiedene Koordinaten anfliegen und zum Ende soll meine Porgramm die zurückgelegte Strecke, als auch die Anzahl der "Wandüberquerungen" wiedergeben. Den Gesamtbereich und die Koordinaten lese ich aus einer Datei ein.
Und nun zu meinem Problem, die "Wandüberquerungen": Am Anfang des Programmes soll abgefragt werden, wie viele Wände in dem Arbeitsfeld stehen, also in wie viele gleich große Bereiche das Feld aufgeteilt werden soll. Soweit so gut. Aber wie genau lege ich die Wände bzw. die entstandenen Bereiche am logischten fest, sodass ich im nachhinein ganz einfach mit einer Methode die Wandüberquerungen, als auch die zurückgelegte Strecke aufsummieren kann ?
Ich steh schon seid mehreren Tagen auf dem Schlauch und hoffe, dass diese Frage nicht ein zu großes Fass aufmacht.
SO mein Erzeugnis bis hier hin:
Java:
public static void main(String[] args)
{
try {
FileInput leser = new FileInput ("C:/Users/eclipse-workspace/Koordinaten.txt");
String zeile = leser.leseZeile();
String[] spalte = zeile.split (";");
//Hier wird die erste Zeile jeweils von String in einen Wert umgewandelt
double xAbsolut = Integer.parseInt (spalte[0]);
double yAbsolut = Integer.parseInt(spalte[1]);
//Nebenrechnungen um den Arbeitsbereich zu definieren
double xNegativ = 0. - ( xAbsolut / 2 );
double yNegativ = 0. - ( yAbsolut / 2 );
double xPositiv = 0. + ( xAbsolut / 2 );
double yPositiv = 0. + ( yAbsolut / 2 );
int anzahlMauer = 0;
//Anzahl der Mauern abfragen / Wiederholen bei falscher Eingabe
while (true)
{
//Keine Zeichen / Buchstaben
try
{
anzahlMauer = IO.readInt("Bitte eine POSITIVE GANZE Zahl als Anzahl der Mauern eingeben: ");
//Keine negativen Zahlen
if (anzahlMauer > 0)
{
break;
}
else
{
IO.println("Bitte keine negativen Werte");
}
}
catch (InputMismatchException fehler)
{
IO.println("Fehler! Das war eine fehlerhafte Eingabe! ");
}
}
//Hier wird der Arbeitsbereich in die einzelnen Breiche definiert
//int anzahlBereiche = anzahlMauer + 1;
// //
// Hier bitte noch ergänzen//
// //
while ((zeile = leser.leseZeile()) != null)
{
leser.leseZeile();
}
leser.schliesseDatei ();
}
catch (IOException e)
{
IO.println("Fehler beim lesen der Datei! " + e.getLocalizedMessage());
System.exit(1);
}
}
}
Ich danke schonmal für eure Beihilfe.
Gruß schmatti