Schiffeversenken in C++ schreiben. Ansatz?

2 Antworten

Zum Groben hat mm78pr schon was gesagt, deshalb gehe ich etwas mehr ins technische Detail.

Es wäre aber toll zu wissen, ob du eine GUI oder eine Konsolenausgabe willst, und ob du Spieler vs KI oder Spieler vs Spieler willst.

Zum speichern des Spielfelds empfiehlt sich ein Array, z.B: 10x10. (bzw. eines für Spieler 1 und eines für Spieler 2.) Um dir nicht merken zu müssen, welche Zahl (in einem int-array) was bedeutet, solltest du ein enum erstellen, als Werte schlage ich vor "water", "water_hit", "ship" und "ship_hit", denke die Namen sind selbsterklärend. Die Regeln von Schiffe versenken sind recht einfach, und sollten keine großen Probleme machen.

Kannst evtl. auch für die Spielfelder nochmal eine Klasse haben. Welcher Spieler gerade dran ist, kannst du mit einer int-Variable oder wieder nem enum speichern. Coole Sache wäre eine fortlaufende int-Variable. Ist diese ungerade = Spieler 1, gerade = Spieler 2, dann hast du automatisch auch einen Runden/Zug-Zähler.

Ok, ich werde mich einfach nochmal genauer mit den Befehlen, die du da genannt hast, genauer beschäftigen.. Melde mich zurück, wenn ich weitere Fragen habe. Wird aber ein paar Tage dauern schätze ich :)

0

Zum Anfang wirds Konsole

0

theoretisch reicht die cout und cin Funktion aus , damit hast du schonmal die Aus und Eingabe abdeckt. Dann noch ein paar if's und for's und fertig ist Schiffeversenken ....

Mein Tipp : Notiere dir auf einem Blatt die einzelnen Schritte die notwendig sind um das Spiel zu spielen. Also zb vom Eingeben des Spielernamens bis hin zum "Du hast gewonnen" Schriftzug.
Fasse zuerst die Punkte recht grob zusammen und teile sie dann in viele Unterpunkte auf.
Dann hast du irgendwann ein sehr lange Liste die du dann nach und nach versuchst per Programmcode umzusetzen.

Dankeschön :) ich mache mir jetzt erstmal einen Strukturplan

0

Was möchtest Du wissen?