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

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

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 23.06.2009, 04:04   #1
Linker88
Пользователь
 
Аватар для Linker88
 
Регистрация: 19.04.2009
Сообщений: 82
Злость Крестики-Нолики

В основном игра "Крестики-нолики" реализована.Ну у меня маленькая проблемка.Ни как не могу написать правила для игры(Если 5 крестиков,значит выйграли крестики,5 ноликов - нолики).Пробовал писать процедурки,но всё равно ни как.Кто может,помогите.
Вот исходник http://ifolder.ru/12776721

Извиняюсь,что ссылка на файловый обменник!!!

Последний раз редактировалось Linker88; 23.06.2009 в 14:21.
Linker88 вне форума Ответить с цитированием
Старый 23.06.2009, 14:22   #2
Linker88
Пользователь
 
Аватар для Linker88
 
Регистрация: 19.04.2009
Сообщений: 82
По умолчанию

Ссори за флейм.Ни кто не поможет?
Linker88 вне форума Ответить с цитированием
Старый 23.06.2009, 14:55   #3
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

конкретно кодом пока не могу.
могу советом... надо?
берите по очереди (в цикле слева-направо, сверху-вниз) все свои фигурки (пусть будут крестики) и считайте её соседей (крестиков) по горизонтали (наращиваем координату X) и по вертикали (наращиваем координату Y) и по диагонали (наращиваем одновременно и X и Y) - в каждом случае, после наращивания проверяем одно из условий - достигли края доски (если доска не бесконечная, конечно), встретили "чужую" фишку или количество отсчитанных соседей достигло нужной величины (в вашем случае 5) - цикл прерываем.
если мы прервались по достижени выигрышной линии - кричим "Победа!" (и подсвечиваем выигрышную линию)
иначе ищем следующую фишку. и повторяем цикл проверки соседей.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 23.06.2009, 17:19   #4
Linker88
Пользователь
 
Аватар для Linker88
 
Регистрация: 19.04.2009
Сообщений: 82
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
конкретно кодом пока не могу.
могу советом... надо?
берите по очереди (в цикле слева-направо, сверху-вниз) все свои фигурки (пусть будут крестики) и считайте её соседей (крестиков) по горизонтали (наращиваем координату X) и по вертикали (наращиваем координату Y) и по диагонали (наращиваем одновременно и X и Y) - в каждом случае, после наращивания проверяем одно из условий - достигли края доски (если доска не бесконечная, конечно), встретили "чужую" фишку или количество отсчитанных соседей достигло нужной величины (в вашем случае 5) - цикл прерываем.
если мы прервались по достижени выигрышной линии - кричим "Победа!" (и подсвечиваем выигрышную линию)
иначе ищем следующую фишку. и повторяем цикл проверки соседей.
Спасибо Сергей за помощь!Но мне бы кодами было бы легче!
Linker88 вне форума Ответить с цитированием
Старый 23.06.2009, 20:56   #5
Linker88
Пользователь
 
Аватар для Linker88
 
Регистрация: 19.04.2009
Сообщений: 82
По умолчанию

АПППППППППППППППППП!!!!!!!!!!
Linker88 вне форума Ответить с цитированием
Старый 24.06.2009, 20:08   #6
Impuls1989
Форумчанин
 
Аватар для Impuls1989
 
Регистрация: 16.08.2008
Сообщений: 276
По умолчанию

Сори. Исходники не смотрел - нет времени. Могу предложить такой вариант:
1. Используется массив 3х3
2. Крестики - 1
3. Нолики - 4
Суммируйте массив сперва по строкам. После прохода каждой строки смотрим сумму. Если сумма равна 12 - выйграли крестики. Если сумма равна 3 - выйграли нолики. Сумма меньше 12 или 3 - обнуляем сумму и играем дальше.
Также поступаем со стролбцами и диогоналями.
Искусственный интеллект - фигня по сравнению с естественной глупостью

Последний раз редактировалось Impuls1989; 24.06.2009 в 23:10.
Impuls1989 вне форума Ответить с цитированием
Старый 27.06.2009, 16:31   #7
Linker88
Пользователь
 
Аватар для Linker88
 
Регистрация: 19.04.2009
Сообщений: 82
По умолчанию

кто может убрать меню с этой программы?...Оставив всё остальное...

Последний раз редактировалось Linker88; 28.06.2009 в 13:14. Причина: !!!!!!!!
Linker88 вне форума Ответить с цитированием
Старый 29.06.2009, 21:30   #8
Linker88
Пользователь
 
Аватар для Linker88
 
Регистрация: 19.04.2009
Сообщений: 82
Радость !!!

У меня есть проверка по вертикали и по горизонтали,но еще нужно сделать проверку по диагоналям.И еще если не крестики не нолики не выйграли,вывести сообщение о ничьей.
Вот исходник KN.rar


ЗЫ:Заранее спс.Если что на пиву кину.Только сделайте,и сообщите свой кошёлёк.
Linker88 вне форума Ответить с цитированием
Старый 29.06.2009, 21:45   #9
NSvirus
пропагандирую жизЪ
Форумчанин
 
Аватар для NSvirus
 
Регистрация: 19.03.2007
Сообщений: 950
По умолчанию

ты бы хоть модули выкладывал
Посторонним В.
NSvirus вне форума Ответить с цитированием
Старый 29.06.2009, 23:51   #10
Linker88
Пользователь
 
Аватар для Linker88
 
Регистрация: 19.04.2009
Сообщений: 82
Радость

Вот для мышки Модуль!
Mouse.rar

Последний раз редактировалось Linker88; 30.06.2009 в 00:07.
Linker88 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Крестики-нолики ROD Gamedev - cоздание игр: Unity, OpenGL, DirectX 21 12.02.2011 00:15
Крестики нолики на C++ Alar Gamedev - cоздание игр: Unity, OpenGL, DirectX 11 15.03.2010 16:09
Крестики нолики aud Паскаль, Turbo Pascal, PascalABC.NET 2 15.06.2009 22:32
Крестики-Нолики. oblachko Помощь студентам 5 23.01.2009 19:32
КРЕСТИКИ-НОЛИКИ oblachko Паскаль, Turbo Pascal, PascalABC.NET 1 17.01.2009 22:21