![]() |
AW: Schiffe versenken programmieren
So das wäre momentan mein Entwurf , es kann auch erfolgreich kompiliert werden jedoch kommt eine Meldung wenn ich dann gestartet habe /:
Meldung: Projekt project1 hat Exception Klasse >> External:SIGSEGV << ausgelöst. In Datei ''grids.pas'' in zeile 4891 Würde gern eine Meinung zum Quellcode (:
Delphi-Quellcode:
unit Unit1;
{$mode objfpc}{$H+} interface uses Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, Grids; type { TForm1 } TForm1 = class(TForm) StringGrid1: TStringGrid; StringGridSpielfeld: TStringGrid; procedure FormCreate(Sender: TObject); private { private declarations } public { public declarations } end; const COLS = 12; ROWS = 12; var Form1: TForm1; SpielfeldIntern :array[1..COLS, 1..ROWS] of integer; implementation {$R *.lfm} { TForm1 } procedure TForm1.FormCreate(Sender: TObject); begin StringgridSpielfeld.ColCount:=COLS; StringgridSpielfeld.RowCount:=ROWS; end; end. |
AW: Schiffe versenken programmieren
Zitat:
Delphi-Quellcode:
Da COLS immer ROWS ist, würde ich dafür eine Konstante nutzen.
const COLS = 12;
ROWS = 12; Wie ich schon sagte, StringGrid erscheint im ersten Moment die beste Wahl, aber bedenke, dass du mehrere Informationen verwalten musst. Welches Schiff ist es, welcher Teile getroffen wurden, ist es versunken? |
AW: Schiffe versenken programmieren
Ja aber mit der Imagekomponente bekomm ich es erst garnicht hin ein Spielfeld zu entwerfen /:
|
AW: Schiffe versenken programmieren
@Popov
Eine Textaufgabe löst man, indem man den Sinn versteht, in einzelnen logischen Teile zerlegt und sich den passenden Rechenweg überlegt. Dann fängt man an zu rechnen. So sollte man das eigentlich gelernt haben. Warum das beim Programmieren anders sein soll oder auf einmal nur professionellen Programmierern vorbehalten ist, hört sich fast nach Lobotomie bei den nicht- professionellen Programmierern an. |
AW: Schiffe versenken programmieren
Ich glaub du solltest erstmal alle deine Mitschriften im Unterricht nochmal genau lesen, speziell zu Arrays, Klassen und deren Eigenschaften und Methoden. Danach solltest du dir ueberlegen wie du das umsetzen willst und Schritt fuer Schritt programmieren. Wieviel Zeit hast du denn dafuer?
|
AW: Schiffe versenken programmieren
Mal ne Frage (auch an Popov):
Habt ihr das Spiel "Schiffe versenken" verstanden? Meines Wissens nach gibt es für die Platzierung folgende Regeln:
Als Datenstruktur reicht somit Folgendes vollkommen aus
Delphi-Quellcode:
BTW: Das Spiel ist beendet, wenn es keine Felder mehr mit dem Status
TEnvironmentState = (esWasser, esSchiff, esDaneben, esTreffer);
TEnvironment = array[1..12,1..12] of TEnvironmentState;
Delphi-Quellcode:
gibt.
esSchiff
Zitat:
|
AW: Schiffe versenken programmieren
Mein Problem ist halt dass ich bis dienstag meine Projektplanung fertig haben muss und dann noch 2 Monate um Programm und die Extras zu erstellen.. /:
Jedoch ist mir nicht ganz klar wie ich mir für dieses Projekt ein Plan aufschreiben kann /: |
AW: Schiffe versenken programmieren
Indem man das Problem analysiert und dabei z.B. feststellt, dass jedes Zelle in dem Spielfeld 4 Zustände annehmen kann.
Bei einem Schuss auf ein Feld wird der Status des Felds verändert und bei einem Treffer werden die Nachbarzellen untersucht, ob das Schiff versenkt wurde. Sind nach dem Schuss (mit einem Treffer) keine Felder mehr mit dem Status Schiff vorhanden, dann ist das Spiel beendet. |
AW: Schiffe versenken programmieren
Guten Abend,
die Regeln zum Schiffeversenken: ![]() Was verstehst Du bzw. Dein Lehrer unter Projektplanung? Grüße Klaus |
AW: Schiffe versenken programmieren
Projektplanung:
- grober Aufbau / Ablauf - wenn es geht Struktogramme (obwohl ich jetzt nicht wüsste wie ich dazu Struktogramme erstellen könnte) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:35 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz