Zitat von
ghostider:
Wir dürfen nich objektorientiert arbeiten, weil es unser lehrer nicht versteht.
Diesen Satz verstehe ich nicht so recht, da ich der Meinung bin, wenn ich mir deinen Quellcode so anschaue, dass du auch keine Ahnung von
OOP hast, also warum erwähnst du es dann erst?
Ich weiß ja nicht, was ihr alles schon zum Thema Programmieren gelernt habt, ob du schon vor dem Informatikunterricht programmiert hast und ob ihr euch das Projekt selber aussuchen durftet oder ihr die Aufgabe vom Lehrer bekommen habt ein Schiffeversenkenspiel zu schreiben, aber wie es mir scheint hast du/habt ihr noch nicht sehr viel Ahnung vom Programmieren habt. Ich schätze auch mal, dass ihr euch die Aufgabe selber ausdenken durftet. Ich entschuldige mich schon einmal, wenn ich falsch liegen sollte.
Also ehrlich gesagt finde ich es nicht sehr sinnvoll, sich mit dem Problem einer KI (auch wenn die für Schiffeversenken nicht so schwierig ist) auseinanderzusetzten, wenn man die wichtigsten Grundlagen der Programmierung noch nicht beherrscht.
Du hast z.B. für jedes Schiff, welches gesetzt werden soll eine extra Prozedur geschrieben und diese dann auch noch einmal für Feld 1 und dann für Feld 2, sowas kann man alles in einer Prozedur zusammenfassen und übergibt dieser dann bestimmte Parameter.
Und wenn ich ehrlich sein soll, dann müsste ich wenigsten 90% deines Codes verwerfen und durch neuen ersetzten, um dir helfen zu können, weil es einfach nur zu kompliziert von dir geschrieben ist.
Dann wollte ich noch erwähnen, dass ich das Prinzip von Schiffe versenken anders kenne und zwar wird abwechseld immer nur ein Schuss abgegeben, egal ob man etwas getroffen hat oder nicht.
Ich möchte dir hiermit keines Falls die Lust am Programmieren des Spiels verderben, sondern dir nur sagen, dass du es dir sehr kompliziert machst, was höchtwahrscheinlich aus deiner Unerfahrenheit im Programmieren zu schlussfolgern ist. Also falls es so sein sollte, dass ihr euch die Aufgabe selber ausdenken durftet, dann würde ich dir empfehlen, dir ein etwas leichteres Problem auszusuchen, denn dann wirst du mehr Spaß am Programmieren haben.
Ich könnte mich zwar jetzt hinsetzten und ein Schiffeversenkenspiel zusammencoden und dir den Quellcode zeigen, nur bin ich der Meinung, dass ich dir damit keines Wegs helfe, da du Programmieren lernen möchtest, nicht ich und Programmieren lernt man eben nur durch Programmieren. Nur dabei sollte man sich nicht zuweit aus dem Fenster lehnen, was du meiner Meinung nach mit der Idee eine KI für Schiffeversenken zu programmieren getan hast, denn sonst verliert man schnell du Lust am Programmieren.
Falls du deinen Code nochmal überarbeitet haben solltest, dann kannst du ihn ja nochmal posten, vllt ist er ja besser, so dass ich dir an deinem Code helfen kann.