Zum Inhalt springen

Schiffe Versenken


ffonsi

Empfohlene Beiträge

Hallo Aufagebenstellung sieht folgendermaßen aus:

Aufgabe1

Schreibe ein Programm "Schiffe Versenken", das in einem 2dimensionalen Array der Größe 8x8 3 Schiffe platziert (2 Zweier und 1 Dreier) und es einem Benutzer ermöglicht über die Tastatur Koordinaten einzugeben. Wenn eine eingegebene Koordinat mit einem Schiff übereinstimmt, soll das Programm das Wort "Treffer" ausgeben, wenn nicht soll "Wasser" ausgegeben werden.

Das Programm soll zusaätzlich überprüfen, ob die om Benutzer eingegebenen Koordinaten gültig sind. Bei ungültigen Koordinaten soll eine Fehlermeldung ausgegeben werden.

So weit so gut, das Programm steht, aber jetzt die Aufgabe 2:

Erweitere das Programm"Schiffe Versenken" so, dass das Programm die Meldung "Versenkt" ausgibt wenn alle Koordinaten eines Schiffes getroffen wurden.

Was auch noch schön wäre eine option, damit nicht immer wider das Programm neu geöffnet werden muss.

Und hier hört mein Latein absolut auf. Habe ehrlich gesagt auch keine Idee wie ich da drin gehen soll.:(

Damit ihr mal schauen könnt wie mein Programm bis jetzt aussieht stelle ich das ganze Ding mal rein.

Ich bin in der Lehre als Fachinformatiker Systemintegration und habe erst mitte Januar angefangen und in der Schule hatte ich auch nicht wirklich ein Fach was einen darauf vorbereitet hat.

Diese Aufgabe hat mein Ausbilder mir gestellt, also keine Hausaufgabe oder sowas.

HILFE!!!

Ich werd noch bekloppt mit dem Programmieren:upps

program schiffe_versenken;

{$APPTYPE CONSOLE}

uses

SysUtils;

var

feld: array [1..8, 1..8] of char;

x,y:integer;

schiff1 : char;

schiff2 : char;

schiff3 : char;

ziel1,ziel2:integer;

wdh : boolean;

begin

// BEFUELLEN des Arrays

schiff1:='S';

schiff2:='S';

schiff3:='S';

for y:=1 to 8 do

begin

for x:=1 to 8 do

begin

feld[x,y]:='W';

end; //for x

end;//for y

// ANLEGEN der Schiffe

//Das 1.Schiff anlegen

feld[1,1]:= schiff1;

feld[2,1]:= schiff1; //ende des ersten Schiffes

// Das 2. Schiff anlegen

feld[4,5]:= schiff2;

feld[4,4]:= schiff2; //ende des zweiten Schiffes

// Das 3. Schiff anlegen

feld[1,8]:= schiff3;

feld[2,8]:= schiff3;

feld[3,8]:= schiff3; // ende des dritten Schiffes

// AUSGABE des Arrays

for y:=1 to 8 do

begin

writeln;

for x:=1 to 8 do

begin

write(feld[x,y]:4);

end; //for x

Writeln;

end;//for y

writeln;

//Eingabeaufforderung

// erste Abfrage der Koordinate

wdh := false;

while wdh = false do

begin

writeln ('Geben sie die erste Koordinate des Feldes ein das sie beschiessen moechten:');

readln (ziel1);

if (ziel1 =0) or (ziel1 > 8) then

begin

writeln ('Diese Eingabe ist nicht zulaessig!!!');

end

else

begin

wdh := true;

end;

end;

// zweite Abrage der Koordinate

wdh:= false;

while wdh = false do

begin

writeln ('Geben sie die zweite Koordinate des Feldes ein das sie beschiessen moechten:');

readln (ziel2);

if (ziel2 =0) or (ziel2 >8) then

begin

writeln ('Diese Eingabe ist nicht zulaessig!!!');

end

else

begin

wdh := true

end;

end;

if feld [ziel1,ziel2] = 'W' then

begin

writeln ('Sie haben nur das WASSER getroffen.');

end

else

begin

writeln ('Sie haben einen TREFFER gelandet!')

end;

readln;

end.

Link zu diesem Kommentar
Auf anderen Seiten teilen

und was sollen wir jetzt machen? Dir hier nen fertigen Quelltext präsentieren?

Frag genau nach, in welchem Punkt du Probleme hast - dann wird dir auch geholfen.

Aber dass das ne Aufgabe vom Ausbilder sein soll bezweifel ich doch sehr stark. Welcher Ausbilder sagt denn zu seinem Azubi "Programmier mal ein Spiel"

Link zu diesem Kommentar
Auf anderen Seiten teilen

tja ich weiß ja nicht bei wem du das gelernt hast aber mein Ausbilder will mich halt fordern, nur manchmal übertreibt er es ein wenig. Ich komme mit der Boolean Regel noch nicht so ganz klar, vielleicht kann mir da ja jemand weiterhelfen, und nicht so Blödsinn verzapfen der keinem weiterhilft.

Und ne richtige Idee wie ich jetzt weiterverfahren soll damit der angibt Versenkt wenn alle Koordinaten getroffen worden sind habe ich auch nicht wirklich parat.

Bearbeitet von ffonsi
Link zu diesem Kommentar
Auf anderen Seiten teilen

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.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...