Ver Mensaje Individual
  #5  
Antiguo 14-12-2007
huwabe78 huwabe78 is offline
Miembro
 
Registrado: oct 2006
Posts: 18
Reputación: 0
huwabe78 Va por buen camino
ESTO SERIA EL TATETI, ESPERO QUE SIRVA PARA QUE ME PUEDAN DAR UNA MANO!!!


Código:
unit tateti;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  matriz = record
            ficha: integer;
            usado: boolean;
           end;

  TForm1 = class(TForm)
    Memo1: TMemo;
    GroupBoxjugador1: TGroupBox;
    Edit_fila_1: TEdit;
    Edit_col_1: TEdit;
    Label1: TLabel;
    Label2: TLabel;
    Button1: TButton;
    GroupBoxjugador2: TGroupBox;
    Label3: TLabel;
    Label4: TLabel;
    Edit_fila_2: TEdit;
    Edit_col_2: TEdit;
    Button2: TButton;
    Button_reiciniar: TButton;
    Buttonganador: TButton;
    Buttonimprimir: TButton;

    procedure FormShow(Sender: TObject);
    procedure Button1Click(Sender: TObject);

    procedure ButtonganadorClick(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure ButtonimprimirClick(Sender: TObject);
    procedure Button_reiciniarClick(Sender: TObject);

  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  tate: array [1..3,1..3] of matriz;
  Form1: TForm1;

implementation

{$R *.dfm}



procedure TForm1.FormShow(Sender: TObject);
begin
edit_fila_1.Clear;
edit_col_1.Clear;
edit_fila_2.Clear;
edit_col_2.Clear;
memo1.Clear;

groupboxjugador2.Enabled:=true;
groupboxjugador1.Enabled:=true;
end;

{***********************************************************}

procedure TForm1.Button1Click(Sender: TObject);
var F,C :integer;

begin
if (edit_fila_1.Text='') or (edit_col_1.Text='')
  then showmessage ('INGRESE LAS COORDENADAS!!!')

  else
    begin
      F:=strtoint(edit_fila_1.Text);
      C:=strtoint(edit_col_1.Text);
      if ((F>3) or (C>3) or (F<=0) or (C<=0))
        then  showmessage ('NO VES QUE ES UN TATETI Y NO UNA BATALLA NAVAL!!!')
        else
          begin
            if (tate[F,C].usado=true)
              then showmessage ('CASILLA USADA!!!')
              else
                begin
                  tate[F,C].ficha:=1;
                  tate[F,C].usado:=true;

                  groupboxjugador1.Enabled:=false;
                  groupboxjugador2.Enabled:=true;
                end;
          end;
  end;

ButtonimprimirClick(Sender);
ButtonganadorClick(Sender);
edit_fila_1.Clear;
edit_col_1.Clear;
end;

{***********************************************************}

procedure TForm1.Button2Click(Sender: TObject);
var F,C :integer;

begin
if (edit_fila_2.Text='') or (edit_col_2.Text='')
  then showmessage ('INGRESE LAS COORDENADAS!!!')

  else
    begin
      F:=strtoint(edit_fila_2.Text);
      C:=strtoint(edit_col_2.Text);
      if ((F>3) or (C>3) or (F<=0) or (C<=0))
        then  showmessage ('NO VES QUE ES UN TATETI Y NO UNA BATALLA NAVAL!!!')
        else
          begin

            if (tate[F,C].usado=true)
              then showmessage ('CASILLA USADA!!!')
              else
                begin
                  tate[F,C].ficha:=2;
                  tate[F,C].usado:=true;

                  groupboxjugador2.Enabled:=false;
                  groupboxjugador1.Enabled:=true;
                end;
          end;
  end;

ButtonimprimirClick(Sender);
ButtonganadorClick(Sender);
edit_fila_2.Clear;
edit_col_2.Clear;
end;

{***********************************************************}

procedure TForm1.ButtonganadorClick(Sender: TObject);
var F,C: integer;
begin
{chequeo fila}
  for F:=1 to 3 do
    if ((tate[F,1].usado=true)and(tate[F,2].ficha=tate[F,1].ficha) and (tate[F,3].ficha=tate[F,1].ficha))
    then
    begin
    showmessage ('TA TE TI');
    groupboxjugador1.Enabled:=false;
    groupboxjugador2.Enabled:=false;
    end;

  for C:=1 to 3 do
    if ((tate[1,C].usado=true)and(tate[2,C].ficha=tate[1,C].ficha) and (tate[3,C].ficha=tate[1,C].ficha))
    then
    begin
    showmessage ('TA TE TI');
    groupboxjugador1.Enabled:=false;
    groupboxjugador2.Enabled:=false;
    end;

  if ((tate[1,1].usado=true)and(tate[2,2].ficha=tate[1,1].ficha) and (tate[3,3].ficha=tate[1,1].ficha))
    then
    begin
    showmessage ('TA TE TI');
    groupboxjugador1.Enabled:=false;
    groupboxjugador2.Enabled:=false;
    end;

  if ((tate[1,3].usado=true)and(tate[2,2].ficha=tate[1,3].ficha) and (tate[3,1].ficha=tate[1,3].ficha))
    then
    begin
    showmessage ('TA TE TI');
    groupboxjugador1.Enabled:=false;
    groupboxjugador2.Enabled:=false;
    end;
end;

{***********************************************************}

procedure TForm1.ButtonimprimirClick(Sender: TObject);
var F,C:integer;
    linea,letra: string;
begin
memo1.Clear;
for F:=1 to 3 do
  begin
    linea:='';
    for C:=1 to 3 do
      begin
       if (tate[F,C].ficha=1)
        then letra:='X'
        else if tate[F,C].ficha=2
            then letra:='O'
            else letra:= '* ';
       linea:=linea+(letra)+ '  ';



      end;
    memo1.Lines.Add(linea);   
    memo1.Lines.Add(#13)
  end;
end;
{***********************************************************}
procedure TForm1.Button_reiciniarClick(Sender: TObject);
var F,C:integer;
begin
memo1.Clear;

for F:=1 to 3 do
  for C:=1 to 3 do
    begin
      tate[F,C].ficha:=0;
      tate[F,C].usado:=false;
    end;

end;

end.
Responder Con Cita