- Регистрация
- 8 Авг 2018
- Сообщения
- 380
- Лучшие ответы
- 0
- Репутация
- 74
Здравствуйте, уважаемые пользователи Pawno-Info! На данный момент, я немного подкорректировал данную игру, которую написал D-MAN, увы, на другом форуме. Сейчас же, я хочу поделится с Вами ею.
PHP:
Program xoy;
Uses crt;
Const n=7;
label goback,ex,nach;
var a:array[1..n,1..n] of char;
b:array[1..10] of string;
w1,w2,pl,i,j,q,g:integer;
h:string;
d,xo:char;
Begin
w1:=0;
w2:=0;
nach:
clrscr; TextColor(white);
q:=1;
writeln(' Крестики-нолики by D-MAN. (Доработка - ReCaptcha)');
writeln('');
writeln(' Правила игры:');
writeln('Ход осуществляется введением двух цифр - сначала по вертикали,затем по горизонтали');
writeln('Например 12 ');
writeln;
for i:=1 to 10 do
b[i]:=' ';
TextColor(LightGreen);
for i:=1 to n do
for j:=1 to n do
a[i,j]:=' ';
for i:=1 to n do
begin
for j:=1 to n do
begin
a[1,3]:='1';
a[1,5]:='2';
a[1,7]:='3';
a[3,1]:='1';
a[5,1]:='2';
a[7,1]:='3';
write(a[i,j]);
end;
writeln;
end;
while q<10 do
begin
writeln;
q:=1+q;
pl:=q mod 2+1;
goback:
write('Игрок ',pl,' : '); readln(h);
if ((h='11') or (h='13') or (h='21') or (h='12') or (h='22') or (h='32') or (h='23') or (h='31') or (h='33')) = false then
begin
writeln('Неправильный ввод');
goto goback;
end;
for i:=1 to 10 do
if b[i]=h then
begin
writeln('Неправильный ввод');
goto goback;
end;
b[q]:=h;
if q mod 2 = 1 then
xo:='o'
else
xo:='x';
if h='11' then a[3,3]:=xo;
if h='12' then a[3,5]:=xo;
if h='13' then a[3,7]:=xo;
if h='21' then a[5,3]:=xo;
if h='31' then a[7,3]:=xo;
if h='32' then a[7,5]:=xo;
if h='22' then a[5,5]:=xo;
if h='33' then a[7,7]:=xo;
if h='23' then a[5,7]:=xo;
clrscr;
for i:=1 to n do
begin
for j:=1 to n do
write(a[i,j]);
writeln;
end;
i:=1;
j:=1;
g:=1;
for g:=1 to 10 do
for j:=1 to 10 do
for i:=1 to 10 do
begin
if (i MOD 2 =1) and (g mod 2 =1) and (j mod 2 = 1) then
if (((b[i]='11') and (b[j]='12') and (b[g]='13')) or ((b[i]='11') and (b[g]='21') and (b[g]='31')) or ((b[i]='21') and (b[j]='22') and (b[g]='23')) or ((b[i]='31') and (b[j]='32') and (b[g]='33')) or ((b[i]='12') and (b[j]='22') and (b[g]='32')) or ((b[i]='13') and (b[j]='23') and (b[g]='33')) or ((b[i]='11') and (b[j]='22') and (b[g]='33')) or ((b[i]='13') and (b[j]='22') and (b[g]='31')) or ((b[i]='11') and (b[j]='21') and (b[g]='31'))) then
begin
textcolor(yellow);
writeln;
writeln('2 Игрок победил !!!');
w2:=w2+1;sleep(10);
goto ex;
end;
if (i MOD 2 =0) and (g mod 2 =0) and (j mod 2 = 0) then
if (((b[i]='11') and (b[j]='12') and (b[g]='13')) or ((b[i]='11') and (b[g]='21') and (b[g]='31')) or ((b[i]='21') and (b[j]='22') and (b[g]='23')) or ((b[i]='31') and (b[j]='32') and (b[g]='33')) or ((b[i]='12') and (b[j]='22') and (b[g]='32')) or ((b[i]='13') and (b[j]='23') and (b[g]='33')) or ((b[i]='11') and (b[j]='22') and (b[g]='33')) or ((b[i]='13') and (b[j]='22') and (b[g]='31')) or ((b[i]='11') and (b[j]='21') and (b[g]='31'))) then
begin
textcolor(Yellow);
writeln;
writeln('1 Игрок победил !!!');
w1:=w1+1; sleep(10);
goto ex;
end;
end;
end;
ex:
sleep(100);
writeln(' Количество побед: Игрок 1 | Игрок 2');
writeln;
writeln(' ',w1,' ',w2);
writeln(' Game Over'); sleep(100);
writeln('Играем еще? да/нет'); read(d);
if d='д' then
goto nach;
readln;
END.
Автор: D-MAN. ( Доработка - ReCaptcha, т.е - я).