brauche Highscore, bekomme es aber nicht hin....

B

Buscemi

Ahoi,
ich habe letzte Woche angefangen mit turbo Pascal ein wenig rumzuspielen und habe auch schon ein Programm gefunden das ich gerne erweitern würde, allerding bekomme ich es nicht hin ein Sequentielle Datei schreiben zu lassen um eine Highscore Tabelle anzulegen.

Code:
uses crt;

const p1 = 1;
      p2 = 2;

var grid : array[1..3,1..3] of byte;

function checkwin(p : byte) : boolean;
begin checkwin := false;
      if (grid[1,1] = p) and (grid[1,2] = p) and (grid[1,3] = p) then checkwin := true;
      if (grid[2,1] = p) and (grid[2,2] = p) and (grid[2,3] = p) then checkwin := true;
      if (grid[3,1] = p) and (grid[3,2] = p) and (grid[3,3] = p) then checkwin := true;
      if (grid[1,1] = p) and (grid[2,1] = p) and (grid[3,1] = p) then checkwin := true;
      if (grid[1,2] = p) and (grid[2,2] = p) and (grid[3,2] = p) then checkwin := true;
      if (grid[1,3] = p) and (grid[2,3] = p) and (grid[3,3] = p) then checkwin := true;
      if (grid[1,1] = p) and (grid[2,2] = p) and (grid[3,3] = p) then checkwin := true;
      if (grid[3,1] = p) and (grid[2,2] = p) and (grid[1,3] = p) then checkwin := true;
end;


procedure Spiel;
var i, j : byte;
begin clrscr;
      writeln('Das Spielfeld');
      writeln;
      writeln('  1 2 3');
      for i := 1 to 3 do begin
          for j := 1 to 3 do begin
              if j = 1 then write(chr(64+i),' ');
              case grid[i,j] of
               p1 : write('O ');
               p2 : write('X ');
               0  : write('  ');
              end;
          end;
          writeln;
      end;
      writeln;
end;

function strtoint(x : string) : integer;
var e, i : integer;
begin val(x,e,i);
      strtoint := e;
end;

var move   : string;
    moves  : byte;
    winner : boolean;
    label retry, retry2;

begin moves := 0;
      repeat;
        retry:
        Spiel;
        write('Spieler 1: Geben Sie das gew?nschte K„stchen an (z. B.: "A1"): ');
        readln(move);
      if grid[ord(upcase(move[1]))-64,strtoint(move[2])] = 0 then begin
         grid[ord(upcase(move[1]))-64,strtoint(move[2])] := p1;
      end else goto retry;
        inc(moves);
        if checkwin(p1) = true then begin
        writeln('Spieler 1 hat gewonnen!');
        readkey;
        halt;
        end;
        retry2:
        Spiel;
        write('Spieler 2: Geben Sie das gew?nschte K„stchen an (z. B.: "A1"):  ');
        readln(move);
      if grid[ord(upcase(move[1]))-64,strtoint(move[2])] = 0 then begin
         grid[ord(upcase(move[1]))-64,strtoint(move[2])] := p2;
      end else goto retry2;
        inc(moves);
      until checkwin(p2) = true;
      writeln('Spieler 2 hat gewonnen!');
      readkey;
end.

das ist der bisherige Programmcode, ein MEnü fehlt noch, das schreibe ich aber grade, kann mir vielleicht jmd sagen wie die Datei erstellt wird usw. ich komme nämlich nicht mehr weiter

Danke im Vorraus
Buscemi
 

Neue Beiträge

Zurück