| |

Fortgeschrittene ProgrammierungRe: Permutation von zwei Zahlenreihen | |  | Autor: Goblin | Datum: 12.03.07 14:20 |
| Hallo Michael,
vielen dank für deine sehr ausführliche Antwort, nur leider helfen mir deine Links auch nicht weiter denn ich verstehe nicht all zu viel davon.
Das von mir beschriebene Problem sollte eigentlich "nur" die Teillösung eines Projektes sein, doch jetzt wird mir klar das ich das knicken kann. Irgendwo ist der Wurm drin, nur weiß ich nicht wo.
Ich wollte eine abgewandelte Version von "Schiffe Versenken" programmieren, bei der jeder Spieler auf einem Feld mit der Größe x * x, y einzelne Elemente(Schiffe) platzieren kann. In dem gewählten Beispiel sollten in einem Spielfeld der Größe 7*7 (1 bis 49)von jedem Spieler jeweils 6 Schiffe der größe "eins" platziert werden.
Die Wege der einzeln Schiffe zu den jeweiligen Gegenerischen Schiffen habe ich über die Koordinaten berechnet(xPosEigenesSchiff - xPosGegnerSchiff, yPosEigenesSchiff - yPosGenerSchiff). Dadurch habe ich für jedes eigene Schiff, sechs Wege zu den Gegenerischen Schiffen erhalten. Also insgesamt 36 mögliche Wege für alle eigenen Schiffe.(habe ich vermutet/gedacht)
Die Möglichkeit ob man zuerst x Schritte geht und dann y Schritte, oder zuerst y Schritte und dann erst die x Schritte habe ich bewusst vernachlässigt. Ich habe zuerst die x Schritte gewählt, da die Schrittlänge in beiden Fällen indentisch ist, unabhängig wie man zuerst geht.
Die Zahlenreihen sind die Startpositionen der Schiffe im Spielfeld.
Jetzt wollte ich den kürzesten Weg, also die wenigste Anzahl der Schritte, zum Gegener für ALLE Schiffe ermitteln.(Idealweg - Idealanzahl der Schritte) Dabei fiel mir auf, das der mögliche kürzeste Weg für Schiff a, zur Folge haben kann das Schiff b nicht seinen kürzesten Weg gehen kann, sondern einen längeren zu einem anderen Schiff nehmen muss. Ich wollte mir jetzt damit behelfen, erst einmal alle möglichen Wege aufzulisten. Doch damit fing das Problem an, wieviele Wege gibt es wirklich? Sind es 36 wie von mir vermutet, oder doch 518400 oder 720, was ich nicht verstehen würde. Abgesehen davon, würde mir auch für "nur" 36 Wege keine Methode einfallen, den kürzesten Weg für alle Schiffe zu bestimmen.
Alles doch Komplizierter wie zu Anfang gedacht.
Aber nochmal Danke für deine Erklärung. |  |
 | Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
  |
|
sevOutBar 4.0 
Vertikale Menüleisten á la Outlook
Erstellen von Outlook ähnlichen Benutzer- interfaces - mit beliebig vielen Gruppen und Symboleinträgen. Moderner OfficeXP-Style mit Farbverläufen, Balloon-Tips, u.v.m. Weitere InfosTipp des Monats Oktober 2025 Matthias KozlowskiUmlaute konvertierenErsetzt die Umlaute in einer Zeichenkette durch die entsprechenden Doppelbuchstaben (aus ä wird ae, usw.) TOP Entwickler-Paket 
TOP-Preis!!
Mit der Developer CD erhalten Sie insgesamt 24 Entwickler- komponenten und Windows-DLLs. Die Einzelkomponenten haben einen Gesamtwert von 1866.50 EUR...
Jetzt nur 979,00 EURWeitere Infos
|
|
|
Copyright ©2000-2025 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|