крестики-Нолики собственно(((

Тема в разделе "Разработка игр и приложений к ним", создана пользователем magadan, 23 янв 2009.

  1. magadan

    magadan Гость

    У меня одна проблема!!((В общем я написал саму игру но у меня тут одно задание!!!Мне нужно чтоб выигрышная строка(А вернее элементы выигрышной строки(крестики или нолики))съезжали вниз!Знаю что можно сделать это через процедуру DELAY()!!Но куда вбивать её ............... ))))Я новичок в программировании, поэтому очень надеюсь на вашу помощь!!!

    Код (Text):
    program krestikinoliki;
    uses crt;
    var x,y,a,i,j,w,xmas,ymas,s:integer;
    c:char;
    mas:array[1..3,1..3] of integer;
    begin
    clrscr;
    for i:=1 to 3 do
    for j:=1 to 3 do
    mas[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; if x>43 then begin gotoxy(x-4,y); x:=x-4; end; end;
    #80: begin gotoxy(x,y+2); y:=y+2; if y>15 then begin gotoxy(x,y-2); y:=y-2; end; end;
    #72: begin gotoxy(x,y-2); y:=y-2; if y<11 then begin gotoxy(x,y+2); y:=y+2; end; end;
    #75: begin gotoxy(x-4,y); x:=x-4; if x<35 then begin gotoxy(x+4,y); x:=x+4; end; end;
    #32: begin if w mod 2 <> 0 then begin write('x'); s:=1; end
    else begin write('0'); s:=0; end; w:=w+1;
    case x of
    35: xmas:=1;
    39: xmas:=2;
    43: xmas:=3;
    end;
    case y of
    11: ymas:=1;
    13: ymas:=2;
    15: ymas:=3;
    end;
    mas[ymas,xmas]:=s;
    end;
    end;
    end;
    gotoxy(35,17);
    for i:=1 to 3 do begin
    if (mas[i,1]=mas[i,2]) and (mas[i,1]=mas[i,3]) and (mas[i,1]<>5) then
    if mas[i,1]=1 then
    writeln('Victory-x')
    else writeln('Victory-0');
    end;

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

    if (mas[1,1]=mas[2,2]) and (mas[2,2]=mas[3,3]) and (mas[1,1]<>5) then
    if mas[1,1]=1 then
    writeln('Victory-x')
    else writeln('Victory-0');

    if (mas[1,3]=mas[2,2]) and (mas[2,2]=mas[3,1]) and (mas[1,3]<>5) then
    if mas[1,3]=1 then
    writeln('Victory-x')
    else writeln('Victory-0');
    gotoxy(31,20);
    readln
    end;
    end.
     
  2. magadan

    magadan Гость

    ЛЮДИ!!!ПОМОГИТЕ!!!!
     
  3. etc

    etc Гость

    Ну вы смешной, всеж понятно что делать надо. А надо - обратиться к тому кто написал это и он доделает, и всегото.
     
  4. magadan

    magadan Гость

    ВООБЩЕ-ТО ЭТО Я ПИСАЛ!!ПРИ ЧЁМ ОЧЕНЬ ДОЛГО, ТАК КАК ТОЛЬКО НАЧАЛ ПРОГРАММИРОВАТЬ!!!!НЕКОТОРЫЕ ПОНЯТИЯ И ФИШКИ ПАСКАЛЯ ЕШЁ НЕ ОСВОИЛ!!
     
  5. etc

    etc Гость

    У вас клавиши залипают.

    Если писали вы то тут дело не в "фишках", а раз так, то ... обратиться всетаки к автору надо.
     
  6. magadan

    magadan Гость

    МДААААААААААААААААААААА.........................СЛОВ НЕТ!!!!!
     
  7. Vadik(R)

    Vadik(R) Well-Known Member

    Регистрация:
    12 дек 2007
    Сообщения:
    483
    Симпатии:
    0
    Я б тебе может и помог, только лень код в программу вставлять, да и еще скачивать паскаль :)
    Вот если ты можешь за помощь отблагодарить материально, тогда разберусь в том, что ты хочешь. Так что жду ответа.
    П.С. Не теряй надежды, возможно тебе или кто-то другой поможет или сам разберешься. Тоже полезно :)
     
  8. BurcevD

    BurcevD Гость

    Что значит "съезжали вниз"
     
  9. magadan

    magadan Гость

    НУ *СЪЕЗЖАЕТ*, ЗНАЧИТ ЭЛЕМЕНТЫ ВЫИГРЫШНОЙ СТРОКИ( ИКСЫ ИЛИ НУЛИ) СМЕШАЮТСЯ ВНИЗ(НУ КАК-БЫ АНИМАЦИЯ!!)ВРОДЕ ЧЕРЕЗ DELAY ДЕЛАЕТСЯ.Только не знаю как это делается=(

    *BurcevD* помоги пожалуйста, если реально смыслишь в этом=)Буду очень благодарен!!!Просто очень нужно сегодня к 7 часам вечера=(((
     
  10. etc

    etc Гость

    А говорил сам написал ... пустобрех.
     
  11. magadan

    magadan Гость

    Я НЕ ПОНЯЛ????Я ЧТО........СООБЩЕНИЯ ПРЕДЫДУЩИЕ НЕ ПОНЯТНО НАПИСАЛ ИЛИ КАК????У МЕНЯ С НЕКОТОРЫМИ ПРОЦЕДУРАМИ ПРОБЛЕМА!!!!!ИЛИ НЕ ПОНЯТНО!!!!ТЫ СЛОВАМИ НЕ РАЗБРАСЫВАЙСЯ ETC, А ТО НИ ОДНОГО ПОТОМ НЕ ПОЙМАЕШЬ!!!!!!РАЗУЙ ГЛАЗА, И ЧИТАЙ СООБЩЕНИЯ ЛУЧШЕ!!!!Я БЫ ДАВНО РАЗОБРАЛСЯ БЫ С ЭТИМИ ДОЛБАННЫМИ ПРОЦЕДУРАМИ, НО У МЕНЯ ПОМИМО ЭТИХ ДЕЛ ЕШЁ МНОЖЕСТВО ДРУГИХ, НАИБОЛЕЕ СЕРЬЁЗНЫХ!!!!!

    Я НЕ ПОЙМУ!!!ВРОДЕ ФОРУМ ПОМОГАЕТ ЛЮДЯМ С ИХ ПРОБЛЕМАМИ В ПРОГРАММИРОВАНИИ..........А ЧТО ПОЛУЧАЕТСЯ!!!!ЛАДНО ЕСЛИ ЛЕНЬ КОД ПИСАТЬ, ДАК ХОТЯ-БЫ ПОДСКАЗАЛИ БЫ В КАКОЙ ОБЛАСТИ КОДА МНЕ СТОИТ ЧТО-ТО ИЗМЕНЯТЬ ИЛИ ПОДСТАВЛЯТЬ!!!!НИ ТОГО НИ ДРУГОГО Я ПОКА ЕШЁ НЕ ПОЛУЧИЛ!!!!СПАСИБО ОТДЕЛЬНЫМ ЛИЧНОСЯМ КОТОРЫЕ ПОМИМО ТОГО ЧТОБЫ РАССУЖДАТЬ, ХОТЬ ЧЕМ-ТО ПЫТАЮТСЯ ПОМОЧЬ!!!А ИМЕННО BurcevD и Vadik®!!!И НАДЕЮСЬ ЧТО ПОМОГУТ!!
     
  12. etc

    etc Гость

    :) смешной вы однако, типа тут собрались тем кому заняться нечем, и вот сейчас от нечего делать за вас все порешают ...
    Именно, но никак не в решении за них, ку?
    Вы все тут про DELAY пишите, а что это за процедура вы смотрели? что она делает, для чего ее применяют ... а ну да выж занятой неимоверно. :)
     
  13. magadan

    magadan Гость

    Я отлично знаю, что эта за процедура!!!DELAY-это процедура задержки выполнения определённого процесса на заданное число миллисекунд.

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


    И ешё!!!Я не прошу готового решения моей проблемы(хотя и не отказался бы), я прошу подсказки, которая вывела бы меня на правильный путь!!!!
     
  14. Vadik(R)

    Vadik(R) Well-Known Member

    Регистрация:
    12 дек 2007
    Сообщения:
    483
    Симпатии:
    0
    Что-то я в твоей программе запутался. Зачем перед последним ендом еще один енд? У меня происходит тогда не соответствие. И второе: я так понял играют два игрока. Но даже если я явно выиграл почему-то ничего не происходит. Честно говоря, я так и не понял, что ты хотел сделать в своей программе. П.с. Лучше исходник прикрепи как файл, а то замучался текст с форума копировать в блокнот, а там еще и предлагают сохранить в кодировке юникод, паскаль потом еле читает такие файлы.
    П.П.С. Короче полчаса ушло зря :)
     
  15. magadan

    magadan Гость

    УПС!!!НУ ИЗВИНИ ДРУГ!!!СЕЙЧАС СДЕЛАЮ=)
    :)

    ВОТ.........ПОЖАЛУЙСТА!!!И END; действительно не нужен=)))Это вот когда я пытался сам сделать, тогда и видимо напартачил=)
     

    Вложения:

    • KRESTDRA.PAS
      Размер файла:
      1,8 КБ
      Просмотров:
      18
  16. etc

    etc Гость

    magadan Вас же еще пояснить просят, и уже не первый:
    , а то других в плохом чтении обвиняете, а сами то.
     
  17. magadan

    magadan Гость

    АХАХА!!!Я ВИНОВАТ В ТОМ, ЧТО КТО-ТО НЕ ПОНЯЛ С ПЕРВОГО РАЗА ЗАДАНИЕ!!!!ХАХАХ!!НЕ СМЕШИ МЕНЯ АДМИН!!!Я ВСЕ СООБШЕНИЯ ХОРОШО ЧИТАЮ!!!ТЫ САМ-ТО ПОНЯЛ ЧТО ЗА СООБШЕНИЕ ТЫ СЕЙЧАС НАПИСАЛ?!?!?!?

    КОРОЧЕ ПРОЕХАЛИ!!!ИЛИ ПОМОГАЙ С ПОДСКАЗКОЙ ИЛИ ЖЕ НЕЧЕГО ИЗ ТЕМЫ ОФФ-ТОП ДЕЛАТЬ!!!ВСЁ ЖЕ ЭТО НЕ ФОРУМ ДОМ 2!!!!Я ЯСНО ВЫРАЗИЛСЯ!!!
     
  18. etc

    etc Гость

    Собственно, у нас проблем нет, в отличие от вас, ина за каким вы тут? Не хотите нормально пояснять, дальше продолжайте конючить и ныть, глядишь чудо и свершится.
     
  19. Vadik(R)

    Vadik(R) Well-Known Member

    Регистрация:
    12 дек 2007
    Сообщения:
    483
    Симпатии:
    0
    Ну вот, с исходником оказалось проще. Но твой вопрос из поста №1 так и не понял.
    Еще бы, ты ж их составлял, тебе и понятна их суть. А я так и не понял, что куда съезжает и вообще, у меня в программе ни разу не было напечатано Victory-x или Victory-0. Хоть я и выигравал, хоть и просерал или даже при ничье.
     
  20. magadan

    magadan Гость

    Слышь ты etc!!!!Здесь никто не конючит и не ноет, так что не волнуйся!!!!А чудо и в правду произошло!!=)))Я сам с этим разобрался!!!в общем сам сделал эту работу, при чём долго старался!!!=)))Спасибо Vadik&reg; за совет разобраться самому=)))Очень помогло!!!! А да кстати..........в первом сообщении у меня написано куда съезжает выигрышная строка(вниз)!!!А вот почему у тебе в проге не было Victiry-0 не знаю!!!может у тебя условие было, просто Victiry-0 или x было записано по-другому=)))
     

Поделиться этой страницей