Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.01.2009, 16:18   #1
oblachko
Пользователь
 
Регистрация: 04.12.2008
Сообщений: 55
По умолчанию Крестики-Нолики.

Как сделать так чтобы,выигрышная строка перемешалась или уезжала вниз.

Напишите пожалуйста код(((
oblachko вне форума Ответить с цитированием
Старый 21.01.2009, 16:23   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

А что из себя представляет эта строка?
Это графика, ячейки таблицы или что-то другое?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 21.01.2009, 23:26   #3
oblachko
Пользователь
 
Регистрация: 04.12.2008
Сообщений: 55
По умолчанию

НУ во-первых хочу уточнить что программа сама на паскале!!!Потом хочу уточнить, что выигрышная строка представляет из себя строку(ну как вы уже знаете в крестиках можно выиграть по вертикали по горизонтали по диагонали И по побочной вертикали) состоящая из крестиков и ноликов.Сам игровой процесс проходит на обычном поле 3х3( обычное поле для игры в крестики-нолики)!!!Дак вот........................та строка в которой выигрывает или крестик или нолик должна опускаться или же съезжать вниз!!!Вот в роде так!!!!

Сейчас сам код программы скину=)
oblachko вне форума Ответить с цитированием
Старый 21.01.2009, 23:34   #4
oblachko
Пользователь
 
Регистрация: 04.12.2008
Сообщений: 55
По умолчанию

Код:
program z1;
uses crt;
 var x,y,a,w,xm,ym,q,i,j,h:integer; c:char; s:array[1..3,1..3] of integer;
 begin
 clrscr;
 for i:=1 to 3 do
  for j:=1 to 3 do
  s[i,j]:=5;
 gotoxy(33,10);
 writeln('ЙНННЛНННЛННН»');
 gotoxy(33,11);
 writeln('є   є   є   є');
 gotoxy(33,12);
 writeln('МНННОНННОННН№');
  gotoxy(33,13);
 writeln('є   є   є   є');
  gotoxy(33,14);
 writeln('МНННОНННОННН№');
  gotoxy(33,15);
 writeln('є   є   є   є');
  gotoxy(33,16);
 writeln('ИНННКНННКНННј');
 gotoxy(35,11);
 x:=35;
 y:=11;
 w:=1;
 while c<>#27 do begin
 c:=readkey;
  if c=#0 then c:=readkey;
 case c of
  #77: begin gotoxy(x+4,y); x:=x+4;  end;
  #80: begin gotoxy(x,y+2); y:=y+2;  end;
  #72: begin gotoxy(x,y-2); y:=y-2;  end;
  #75: begin gotoxy(x-4,y); x:=x-4;  end;
   #108: begin clrscr; x:=x-5;
 gotoxy(x-5,10);
    writeln('ЙНННЛНННЛННН»');
 gotoxy(x-5,11);
    writeln('є   є   є   є');
 gotoxy(x-5,12);
    writeln('МНННОНННОННН№');
  gotoxy(x-5,13);
    writeln('є   є   є   є');
  gotoxy(x-5,14);
    writeln('МНННОНННОННН№');
  gotoxy(x-5,15);
    writeln('є   є   є   є');
  gotoxy(x-5,16);
    writeln('ИНННКНННКНННј');
 gotoxy(x-3,11);
 for i:=1 to 3 do
  for j:=1 to 3  do begin
   if (s[i,j]=0)  then begin case i of
                           1: y:=11;
                           2: y:=13;
                           3: y:=15;
                           end;
                           case j of
                           1: x:=32;
                           2: x:=36;
                           3: x:=40;
                           end;
                           gotoxy(x,y);  write('0'); end;
   if (s[i,j]=1) then begin case i of
                           1: y:=11;
                           2: y:=13;
                           3: y:=15;
                           end;
                           case j of
                           1: x:=32;
                           2: x:=36;
                           3: x:=40;
                           end;
                           gotoxy(x,y);  write('x'); end;
  end;
   end;
  #32: begin if w mod 2 <> 0 then begin write('x'); q:=1; end
       else begin write('0'); q:=0; end;  w:=w+1;
         case x of
         35: xm:=1;
         39: xm:=2;
         43: xm:=3;
         end;
         case y of
         11: ym:=1;
         13: ym:=2;
         15: ym:=3;
         end;
         s[ym,xm]:=q;
         end;
 end;
 end;
 gotoxy(35,17);
 for i:=1 to 3 do begin
   if (s[i,1]=s[i,2]) and (s[i,1]=s[i,3]) and (s[i,1]<>5) then
     if s[i,1]=1 then begin  h:=1;
    writeln('Victory-x'); end
     else begin writeln('Victory-0'); h:=2; end
    end;

 for i:=1 to 3 do begin
   if (s[1,i]=s[2,i]) and (s[1,i]=s[3,i]) and (s[1,i]<>5) then
     if s[1,i]=1 then begin
    writeln('Victory-x'); h:=1; end
     else begin writeln('Victory-0'); h:=2; end;
    end;

 if (s[1,1]=s[2,2]) and (s[2,2]=s[3,3]) and (s[1,1]<>5) then
   if s[1,1]=1 then begin
  writeln('Victory-x'); h:=1; end
   else begin writeln('Victory-0'); h:=2; end;

  if (s[1,3]=s[2,2]) and (s[2,2]=s[3,1]) and (s[1,3]<>5) then
    if s[1,3]=1 then begin
   writeln('Victory-x'); h:=1; end
    else begin writeln('Victory-0'); h:=2; end;
 gotoxy(31,20);

 readln

 end.

Начало пути к моему решению!!!Дальше что-то не получается(((

Последний раз редактировалось oblachko; 21.01.2009 в 23:37.
oblachko вне форума Ответить с цитированием
Старый 23.01.2009, 19:32   #5
oblachko
Пользователь
 
Регистрация: 04.12.2008
Сообщений: 55
По умолчанию

А точнее съезжают элементы этой выигрышной строки(или иксы или нолики)!!!
oblachko вне форума Ответить с цитированием
Старый 23.01.2009, 19:32   #6
oblachko
Пользователь
 
Регистрация: 04.12.2008
Сообщений: 55
По умолчанию

ЛЮДИ ПОМОГИТЕ!!!!ИНАЧЕ НАЧНЕТСЯ ФРУСТРАЦИЯ=(
oblachko вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
крестики нолики aesoem Общие вопросы Delphi 11 12.06.2011 11:32
Крестики нолики на C++ Alar Gamedev - cоздание игр: Unity, OpenGL, DirectX 11 15.03.2010 16:09
КРЕСТИКИ-НОЛИКИ oblachko Паскаль, Turbo Pascal, PascalABC.NET 1 17.01.2009 22:21
Крестики-нолики С++ ROD Помощь студентам 7 21.12.2008 20:07
Крестики - Нолики Иваненко Помощь студентам 6 09.05.2008 22:09