Шашки на C#

  • 17 сент. 2014 г.
  • 7454 Слова
СОДЕРЖАНИЕ
ВВЕДЕНИЕ 5
1 Постановка задачи 6
2 Алгоритм решения задачи 7
3 Информационная модель 9
4 Архитектура программы 12
5 Графический интерфейс пользователя 14
6 Тестовый пример. Тестирование программы 16
7 Демонстрация работы программы 20
ЗАКЛЮЧЕНИЕ 24
СПИСОК ИСПОЛЬЗУЕМЫХ ИСТОЧНИКОВ 25
ПРИЛОЖЕНИЕ А. КОД ПРОГРАММЫ 26

ВВЕДЕНИЕ

Шашки входят в категорию такназываемых игр шашечного типа, включающую множество разнообразных настольных игр для двух-четырёх игроков, в которые играют на расчерченной доске равноценными фишками. Кроме шашек, в неё также входят такие игры, как го, нарды и другие.
Достоверных сведений об изобретении шашек история не сохранила. Вполне вероятно, что различные игры шашечного типа изобретались на протяжении истории человечествамногократно и независимо, чему способствовала простота инвентаря и правил. Считается, что известные сейчас игры шашечного типа представляют собой различные этапы эволюции игр на доске, так что все они в определённом смысле родственны друг другу, что подтверждается близостью инвентаря и названий игр.
Шашки - это не просто настольная логическая игра, а целая наука, в которой важна каждая деталь в ходе игры.Правила зависят от разновидности и могут кардинально отличаться от классических. Среди наиболее распространенных видов можно выделить Русские шашки, Английские, Поддавки, Уголки и т.д.
Существует различные алгоритмы и методы оптимизации игры, поэтому целью курсового проекта была разработка программы, позволяющая продемонстрировать реализацию алгоритма решения с использованием методов оптимизацииигры «Шашки».
Предмет исследования: реализация алгоритма решения игры «Шашки». Решение игры построено на алгоритме альфа-бета отсечения, основанном на алгоритме минимакс.
В работе предусмотрены следующие моменты:
- начало новой игры;
- генерация компьютером ходов;
- создание удобного интерфейса;
- отображение истории ходов;
- игра человек-компьютер.
Предполагаемая область применения игры«Шашки»: демонстрация работы алгоритма решения данной задачи, проверка своих способностей, тренировка мышления.

1 Постановка задачи

Разработать игровое приложение «Шашки».
Исходные данные к проекту: среда разработки — MS Visual Studio 2010, ОС Windows 7, язык программирования C#.
Целью данного курсового проекта является создание игровой программы “шашки” для игры между человеком и компьютером.Приложение подчиняется правилам игры 'Русские шашки'. Эта разновидность шашек наиболее распространена и знакома практически каждому, поэтому на нее и пал выбор как на наиболее известную.
Формально задача заключается в написании программы, которая бы моделировала игру в шашки с компьютером. При этом должна быть реализована возможность игры двух человек при помощи компьютера. В обоих случаях программадолжна проверять корректность ходов человека, руководствуясь правилами игры и не допускать ввода некорректных ходов, так же она должна передавать ход от одного игрока к другому.
Правила русских шашек:
1. доска 8х8 клеток;
2. шашки занимают первые три ряда с каждой стороны;
3. простая шашка может бить назад;
4. дамка может ходить на любое число полей;
5. при бое простой шашкой черезполе превращения она превращается в дамку и продолжает бой по правилам дамки;
6. Бить можно произвольное количество шашек в любых направлениях;
7. Цель игры - съесть или запереть все шашки противника.

2 Алгоритм решения задачи

Шашки являются игрой с полной информацией, поэтому итог игры предопределён в случае следования по крайней мере одним из игроков оптимальной стратегии,гарантирующей достижение выигрыша (или ничьей). Математически доказано, что такая стратегия, при условии конечности игры, наверняка существует и даже вычислена для шашек на суперкомпьютерах. Однако большое количество вариантов ходов и возможных позиций препятствуют расчёту хода партии более чем на несколько ходов вперёд, так что на практике итог игры непредсказуем.
При...
tracking img