dhg Geschrieben 24. Januar 2006 Teilen Geschrieben 24. Januar 2006 Guten Tag, ich sitze seit knapp 3 Tagen an einer Aufgabe in JAVA. Mein Problem ist, ich kann 0 Java. Versuche also seit 3 Tagen ein kleines Programm in Java zu erstellen. Ich hoffe mir koennte irgend jemand helfen. Folgende Aufgabenstellung wurde vorgegeben: [B]Teil 1[/B] Schreiben Sie ein Programm, dass drei Punkte in einem Koordinatensystem (Sie köonnen sich auf die beiden Positiven Achsen beschr¨anken) als Parameter übergeben bekommt und dann die kürzeste Verbindung zwischen diesen drei Punkten ermittelt. Als Ausgabe reicht es, die beiden Punktepaare anzugeben, zwischen dennen eine Verbindung besteht. [B]Beispiel:[/B] Sie übergeben Ihrem Programm die Punkte (2;1), (8;2) und (9;4). Dann sollte Ihr Programm ausgeben, dass die Verbindung zwischen (2;1) und (8;2) und zwischen (8;2) und (9;4) in der Summe die Kürzeste ist. [B]Tipp:[/B] Zeichnen Sie sich ein paar Beispiele auf ein Blatt Papier und überlegen Sie sich, wie Sie die kürzeste Strecke bestimmen können. [B]Teil2 [U](optional)[/U][/B] Erweitern Sie Ihr Programm aus Teil 1 um eine grafische Ausgabe (z.B. per AWT, ActiveX, ...) Ich muss diese Aufgabe bis mitte nächster Woche abgegeben haben. Meine kleine "anfangsstufen" sind in PHP. Ich hoffe es ist nicht zu viel verlangt, wenn ich nach Hilfe / Tipps frage. Das ganze soll wenns geht als "ausfuehrbares" Script unter Windows funktionieren. Quelltext sowie Kommentare innerhalb diesem Quelltextes sollen ebenfalls abgegeben werden. Vielen Dank schon einmal im vorraus, Mit freundlichen Grüßen dhg Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Whatever Geschrieben 24. Januar 2006 Teilen Geschrieben 24. Januar 2006 Wo hakt es denn? Das müssten wir schon wissen (es sei denn du willst alles vorgekaut haben, das wird kaum jemand tun). Ganz nebenbei versteh ich die Aufgabenstellung nicht. Geht es um das finden des kürzesten Weges, oder um ein Paar Punkt die am dichtesten Zusammenstehen? Für ersteres: Such einfach die beiden Punkte, die am weitesten auseinander liegen und die Verbindung über die anderen beiden ist die kürzeste. (Oder so *verwirrtbin* Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
dhg Geschrieben 24. Januar 2006 Autor Teilen Geschrieben 24. Januar 2006 Wenn ich die Aufgabe richtig verstanden habe, soll das Programm ausgeben das der Weg zwischen (2;1) und (8;2) der kürzeste ist, sowie zwischen (8;2) und (9;4). Wenn ich die Aufgabe soweit richtig verstehe, muss ich den Betrag des Vektors ausrechnen. Mir geht es darum, das ich irgendwie erstmal auf den richtigen Weg komme, damit man sich an solch ein Programm ranwagen kann. Also ob die Aufgabenstellung so wie oben beschrieben richtig verstanden wurde, oder ob ich vielleicht doch falsch liege. Habe mir mal einige Seitem im Internet zum Vektor rausgesucht. Es gibt anscheind unterschiedliche Formeln. Danke schonmal fuer die schnelle Antwort. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
geloescht_Newlukai Geschrieben 24. Januar 2006 Teilen Geschrieben 24. Januar 2006 Meine Interpretation der Aufgabe: Drei Punkte beschreiben im 2-dimensionalen Raum bekanntlich ein Dreieck. Nehmen wir z. B. das rechtwinklige Ideal-Dreieck mit den Kantenlängen 3, 4 und 5. Es sind 3 Wege vorstellbar, die die Punkte verbinden: 3 + 4 = 7 3 + 5 = 8 4 + 5 = 9 Deine Aufgabe besteht nun darin, die beiden Punktepaare auszugeben, die über den kürzesten Weg verbunden sind. Vektoren dürften dabei hilfreich sein. An sich mußt Du für jedes Punktepaar den "Verschiebungsvektor" berechnen. Mit diesem kannst Du dank dem Satz des Pythagoras die Strecke zwischen den Punkten berechnen. Dann mußt Du nur noch die kleinste Strecke raussuchen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Whatever Geschrieben 24. Januar 2006 Teilen Geschrieben 24. Januar 2006 Ich habe nochmal ein wenig gegrübelt und eigentlich lässt das nur einen Schluss zu... Du bekommst drei Punkt: A, B, C Das Programm soll jetzt herausfinden welche beiden Punktpaare am dichteten beieinander leigen (also Nicht am weitestens auseinander sind). Die einfachste Lösung wäre, da es ja in jedem Fall ein Dreieck ist (es sei denn 2 Punkt leigen am selben Ort, aber das kann man ja vorher abfangen), der Satz des Phytagoras. Berechne einfach folgendes: A nach B: (Ax-Bx)² + (Ay-By)² = 37 A nach C: (Ax-Cx)² + (Ay-Cy)² = 58 B nach C: (Bx-Cx)² + (By-Cy)² = 5 (Die Wurzel kann man weglassen, wir wollen ja nicht die Entfernung, sondern nur das Verhältnis) Dann greifst du dir die beiden kleinesten raus (oder besser: Streichst die größte Entfernung) und du hast es. Implementierung entweder einfach und schnell über verschachteltes Array oder schön Objektorientiert: 3 Punktobjekte 3 Vektorobjekte 1 Funktion die die Entfernung berechnet Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
geloescht_Newlukai Geschrieben 24. Januar 2006 Teilen Geschrieben 24. Januar 2006 Die einfachste Lösung wäre, da es ja in jedem Fall ein Dreieck ist (es sei denn 2 Punkt leigen am selben Ort, aber das kann man ja vorher abfangen), der Satz des Phytagoras. Ich bin mathematisch nicht in Topform. Aber der Satz gilt doch nur im rechtwinkligen Dreieck. Bei der Aufgabenstellung wird über das aufgespannte Dreieck nichts gesagt. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Whatever Geschrieben 24. Januar 2006 Teilen Geschrieben 24. Januar 2006 Es liegt ja auch ein rechtwinkliges Dreieck zugrunde... Berechnet werden die grünen Strecken mit Hilfe der grauen Hilfsdreiecke... Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
geloescht_Newlukai Geschrieben 24. Januar 2006 Teilen Geschrieben 24. Januar 2006 Hast ja recht. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
dhg Geschrieben 25. Januar 2006 Autor Teilen Geschrieben 25. Januar 2006 Okay, vielen Dank. Ich bin nun dabei das gesamte mit nen bissl Buecher-Hilfe in JAVA zu proggen. Wenn es fertig ist, gebe ich mal ein Zeichen Schoenen Abend noch! Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.