Список используемой литературы
Else if (place=place) and (place=place) and (place>0) then. Else if (place=place) and (place=place) and (place>0) then. Else if (place=Place) and (place=place) and (place>0) then. Else if (place=Place) and (place=place) and (place>0) then. Else if (place=Place) and (place=place) and (place>0) then. Else if (place=Place) and (place=place) and (place>0) then. Form1. Image11.Picture.LoadFromFile… Читать ещё >
Список используемой литературы (реферат, курсовая, диплом, контрольная)
- 1. Фаронов В. В. Delphi 6. Учебный курс. Издательство Молгачев С. В., 2001. — 672с.
- 2. Программирование в среде Delphi: Лабораторный практикум для студентов всех специальностей. Под общей редакцией Синицына А. К. — Мн.; БГУИР, 1998. — 94 с.
- 3. Програмирование в среде Delphi. Учебное пособие. Колосов С. В. — Мн.: БГУИР, 2005. — 166 с.
Листинг 1. Текст программы
unit xo_u;
interface.
uses.
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,.
Dialogs, Menus, ExtCtrls, ActnList, mmsystem, Pngimage, StdCtrls, Buttons;
type.
TForm1 = class (TForm).
Image1: TImage;
Image2: TImage;
Image3: TImage;
Image4: TImage;
Image5: TImage;
Image6: TImage;
Image7: TImage;
Image8: TImage;
Image9: TImage;
Image10: TImage;
Image11: TImage;
Image12: TImage;
Image13: TImage;
Image14: TImage;
Image15: TImage;
Image16: TImage;
Image17: TImage;
procedure FormCreate (Sender: TObject);
procedure Image1Click (Sender: TObject);
procedure Image2Click (Sender: TObject);
procedure Image3Click (Sender: TObject);
procedure Image4Click (Sender: TObject);
procedure Image5Click (Sender: TObject);
procedure Image6Click (Sender: TObject);
procedure Image7Click (Sender: TObject);
procedure Image8Click (Sender: TObject);
procedure Image9Click (Sender: TObject);
procedure Image12Click (Sender: TObject);
procedure Image13Click (Sender: TObject);
procedure Image14Click (Sender: TObject);
procedure Image16Click (Sender: TObject);
procedure Image17Click (Sender: TObject);
private.
{ Private declarations }.
public.
{ Public declarations }.
end;
var.
Form1: TForm1;
Place: array[1 .9] of integer; //массив значений 1-крестик 2-нолик 0-пустота.
i, Clicks: integer;
PlayerX, CompO, Start, mark: boolean;
implementation.
{$R *.dfm}.
procedure TForm1. FormCreate (Sender: TObject);
begin.
form1.Image10.Width:=486;
form1.Image10.Height:=512;
Form1.Image10.Picture.LoadFromFile ('done/base.bmp');
Form1.Image11.Picture.LoadFromFile ('done/dockbar.png');
Form1.Image12.Picture.LoadFromFile ('done/NewGameButton.png');
Form1.Image13.Picture.LoadFromFile ('done/AboutButton.png');
Form1.Image14.Picture.LoadFromFile ('done/ExitButton.png');
Form1.Image15.SendToBack;
PlayerX:=false;
CompO:=false;
end;
Procedure Initialize; //процедура инициализации.
begin.
for i:=1 to 9 do //зануление значений массива.
Place[i]: =0;
Form1.Image1.Enabled:=true; //включение возможности нажатия на Image.
Form1.Image2.Enabled:=true;
Form1.Image3.Enabled:=true;
Form1.Image4.Enabled:=true;
Form1.Image5.Enabled:=true;
Form1.Image6.Enabled:=true;
Form1.Image7.Enabled:=true;
Form1.Image8.Enabled:=true;
Form1.Image9.Enabled:=true;
Form1.Image1.Picture:=nil; //очищение Image от использованных изображений.
Form1.Image2.Picture:=nil;
Form1.Image3.Picture:=nil;
Form1.Image4.Picture:=nil;
Form1.Image5.Picture:=nil;
Form1.Image6.Picture:=nil;
Form1.Image7.Picture:=nil;
Form1.Image8.Picture:=nil;
Form1.Image9.Picture:=nil;
Form1.Image15.Picture:=nil;
Form1.Image15.SendToBack;
Form1.Image16.SendToBack;
Form1.Image17.SendToBack;
Clicks:=0;
Start:=true;
end;
procedure CompPlay; //процедура игры компьютера.
begin.
mark:=true;
if (start=true)and (Clicks9)then.
begin.
while mark=true do.
begin.
i:=random (9)+1;
if place[i]=0 then begin.
place[i]: =2;
mark:=false;
Inc (Clicks);
CompO:=false;
PlayerX:=true;
if i=1 then begin.
Form1.Image1.Picture.LoadFromFile ('done/o100.png');
Form1.Image1.Enabled:=false;
end;
if i=2 then begin.
Form1.Image2.Picture.LoadFromFile ('done/o100.png');
Form1.Image2.Enabled:=false;
end;
if i=3 then begin.
Form1.Image3.Picture.LoadFromFile ('done/o100.png');
Form1.Image3.Enabled:=false;
end;
if i=4 then begin.
Form1.Image4.Picture.LoadFromFile ('done/o100.png');
Form1.Image4.Enabled:=false;
end;
if i=5 then begin.
Form1.Image5.Picture.LoadFromFile ('done/o100.png');
Form1.Image5.Enabled:=false;
end;
if i=6 then begin.
Form1.Image6.Picture.LoadFromFile ('done/o100.png');
Form1.Image6.Enabled:=false;
end;
if i=7 then begin.
Form1.Image7.Picture.LoadFromFile ('done/o100.png');
Form1.Image7.Enabled:=false;
end;
if i=8 then begin.
Form1.Image8.Picture.LoadFromFile ('done/o100.png');
Form1.Image8.Enabled:=false;
end;
if i=9 then begin.
Form1.Image9.Picture.LoadFromFile ('done/o100.png');
Form1.Image9.Enabled:=false;
end;
end;
end;
end;
end;
procedure PlayerCheck; //процедура проверки (играет пользователь или.
begin компьютер).
Form1.Image15.BringToFront;
Form1.Image15.Picture.LoadFromFile ('done/ChooseTeam.png');
Form1.Image16.BringToFront;
Form1.Image16.Picture.LoadFromFile ('done/x75.png');
Form1.Image17.BringToFront;
Form1.Image17.Picture.LoadFromFile ('done/o75.png');
end;
procedure Check; //процедура проверки на наличие победителя.
label winner;
begin.
if (place[1]=place[2]) and (place[2]=place[3]) and (Place[1]0) then.
goto winner.
else if (place[4]=Place[5]) and (place[5]=place[6]) and (place[4]>0) then.
goto winner.
else if (place[7]=Place[8]) and (place[8]=place[9]) and (place[7]>0) then.
goto winner.
else if (place[1]=place[4]) and (place[4]=place[7]) and (place[1]>0) then.
goto winner.
else if (place[2]=Place[5]) and (place[5]=place[8]) and (place[2]>0) then.
goto winner.
else if (place[3]=Place[6]) and (place[6]=place[9]) and (place[3]>0) then.
goto winner.
else if (place[1]=place[5]) and (place[5]=place[9]) and (place[1]>0) then.
goto winner.
else if (place[3]=place[5]) and (place[5]=place[7]) and (place[3]>0) then.
goto winner;
if Clicks=9 then begin.
Form1.Image15.BringToFront;
Form1.Image15.Picture.LoadFromFile ('done/NobodyWin100.png');
Start:=False;
end;
exit;
winner:
if CompO=true then begin.
Form1.Image15.BringToFront;
Form1.Image15.Picture.LoadFromFile ('done/FinalBlue100.png');
Start:=False;
end.
else begin.
Form1.Image15.BringToFront;
Form1.Image15.Picture.LoadFromFile ('done/FinalRed100.png');
Start:=False;
end;
end;
procedure TForm1. Image12Click (Sender: TObject); //процедура начала игры.
begin.
Start:=false;
PlayerCheck;
end;
procedure TForm1. Image16Click (Sender: TObject);
begin.
PlayerX:=true;
CompO:=false;
if PlayerX=true then Initialize;
end;
procedure TForm1. Image17Click (Sender: TObject);
begin.
PlayerX:=false;
CompO:=true;
If CompO=true then Initialize;
CompPlay;
end;
procedure TForm1. Image13Click (Sender: TObject);//процедура вывода.
begin информации о программе.
Form1.Image15.BringToFront;
Form1.Image15.Picture.LoadFromFile ('done/Info.png');
end;
procedure TForm1. Image14Click (Sender: TObject); //процедура выхода из игры.
begin.
Form1.Close;
end;
procedure TForm1. Image1Click (Sender: TObject);
begin.
if Start=true then begin.
if PlayerX=true then begin.
place[1]: =1;
inc (Clicks);
Image1.Picture.LoadFromFile ('done/x100.png');
Form1.Image1.Enabled:=False;
if Clicks>=5 then check;
PlayerX:=false;
CompO:=true;
CompPlay;
if Clicks>=5 then check.
end;
end;
end;
procedure TForm1. Image2Click (Sender: TObject);
begin.
if Start=true then begin.
if PlayerX=true then begin.
place[2]: =1;
inc (Clicks);
Image2.Picture.LoadFromFile ('done/x100.png');
Form1.Image2.Enabled:=False;
if Clicks>=5 then check;
PlayerX:=false;
CompO:=true;
CompPlay;
if Clicks>=5 then check.
end;
end;
end;
procedure TForm1. Image3Click (Sender: TObject);
begin.
if Start=true then begin.
if PlayerX=true then begin.
place[3]: =1;
inc (Clicks);
Image3.Picture.LoadFromFile ('done/x100.png');
Form1.Image3.Enabled:=False;
if Clicks>=5 then check;
PlayerX:=false;
CompO:=true;
CompPlay;
if Clicks>=5 then check.
end;
end;
end;
procedure TForm1. Image4Click (Sender: TObject);
begin.
if Start=true then begin.
if PlayerX=true then begin.
place[4]: =1;
inc (Clicks);
Image4.Picture.LoadFromFile ('done/x100.png');
Form1.Image4.Enabled:=False;
if Clicks>=5 then check;
PlayerX:=false;
CompO:=true;
CompPlay;
if Clicks>=5 then check.
end;
end;
end;
procedure TForm1. Image5Click (Sender: TObject);
begin.
if Start=true then begin.
if PlayerX=true then begin.
place[5]: =1;
inc (Clicks);
Image5.Picture.LoadFromFile ('done/x100.png');
Form1.Image5.Enabled:=False;
if Clicks>=5 then check;
PlayerX:=false;
CompO:=true;
CompPlay;
if Clicks>=5 then check.
end;
end;
end;
procedure TForm1. Image6Click (Sender: TObject);
begin.
if Start=true then begin.
if PlayerX=true then begin.
place[6]: =1;
inc (Clicks);
Image6.Picture.LoadFromFile ('done/x100.png');
Form1.Image6.Enabled:=False;
if Clicks>=5 then check;
PlayerX:=false;
CompO:=true;
CompPlay;
if Clicks>=5 then check.
end;
end;
end;
procedure TForm1. Image7Click (Sender: TObject);
begin.
if Start=true then begin.
if PlayerX=true then begin.
place[7]: =1;
inc (Clicks);
Image7.Picture.LoadFromFile ('done/x100.png');
Form1.Image7.Enabled:=False;
if Clicks>=5 then check;
PlayerX:=false;
CompO:=true;
CompPlay;
if Clicks>=5 then check.
end;
end;
end;
procedure TForm1. Image8Click (Sender: TObject);
begin.
if Start=true then begin.
if PlayerX=true then begin.
place[8]: =1;
inc (Clicks);
Image8.Picture.LoadFromFile ('done/x100.png');
Form1.Image8.Enabled:=False;
if Clicks>=5 then check;
PlayerX:=false;
CompO:=true;
CompPlay;
if Clicks>=5 then check.
end;
end;
end;
procedure TForm1. Image9Click (Sender: TObject);
begin.
if Start=true then begin.
if PlayerX=true then begin.
place[9]: =1;
inc (Clicks);
Image9.Picture.LoadFromFile ('done/x100.png');
Form1.Image9.Enabled:=False;
if Clicks>=5 then check;
PlayerX:=false;
CompO:=true;
CompPlay;
if Clicks>=5 then check.
end;
end;
end;
end.