Курсовая работа. Игра Судоку

СодержаниеВВЕДЕНИЕ 31. ОПИСАНИЕ ПРЕДМЕТНОЙ ОБЛАСТИ 41.1. История судоку 41.2. Правила игры в судоку 51.3. Как начать играть? 51.4. Актуальность 62. ПРОЕКТИРОВАНИЕ СИСТЕМЫ 72.1. Разработка обобщенного алгоритма функционирования приложения 72.1.1. Алгоритм грубого перебора значений для генерации ячеек 72.1.2 Алгоритм решения судоку 72.2. Разработка структуры приложения 102.2.1 Общие характеристики 102.2.2. Минимальные системные требования 102.2.3. Функциональное назначение 102.2.4. Инсталляция и выполнение программного продукта 102.2.5. Общий алгоритм программного продукта 102.2.6. Разработанные меню и интерфейсы 132.2.7. Сообщения системы 153. ПРОГРАММА И МЕТОДИКА ИСПЫТАНИЙ 17ЗАКЛЮЧЕНИЕ 18СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 19ПРИЛОЖЕНИЯ 20

ВВЕДЕНИЕ

В данном курсовом проекте представлена актуальная на сегодняшний день игра под названием судоку, реализованная в стиле объектно-ориентированного программирования.

Целью работы является разработка и програмная реализация «Судоку» в объектно-ориентированном стиле. В программе должны соблюдаться принципы информационной закрытости, модульности и иерархической организации.

Задачи, поставленные при проектировании:

  • Алгоритм генерации случайного игрового поля судоку.
  • Алгоритм решения произвольного игрового поля.
  • Приложение для вывода игрового поля на экран.

1.1.Актуальность

 Недостаточное развитие логики и внимательности, пространственного мышления у детей младших классов, в особенности проявляемое при решении судоку.  Судоку, ставшая в последнее время очень популярной. Судоку активно публикуют газеты и журналы разных стран мира, сборники судоку издаются большими тиражами. Решение судоку — популярный вид досуга.

Цель работы: Развитие логического мышления и внимательности у детей, умения структурировать шаги алгоритма решения судоку и компактного оформления алгоритма решения в среде соответствующих офисных приложений.  Это в дальнейшем будет способствовать нахождению и облегчению способов решения и устойчивых навыков оформления решения более сложных логических и пространственных задач, в том числе с помощью средств офисных технологий (адекватных для различных классов задач).

 

2.      ПРОЕКТИРОВАНИЕ СИСТЕМЫ

2.1.Разработка обобщенного алгоритма функционирования приложения

2.1.1.      Алгоритм грубого перебора значений для генерации ячеек

Для начала выделим общую терминологию:

1) Игровое поле Судоку — матрица, поле 9x9 ячеек. Итого, игровое поле Судоку насчитывает 81 ячейку.

2) Блок (Сегемент) — область игрового поля, квадрант, размер которого 3x3 ячейки. Игровое поле Судоку состоит из девяти (9) сегментов, в каждом сегменте по девять (9) ячеек.

3) Индекс — порядковый номер ячейки (от 1 до 81).

4) Координаты ячейки — координаты X (по горизонтали) и Y (по вертикали) на игровом поле.

Суть алгоритма "Грубого перебора" заключается в его названии. Происходит грубый перебор возможных значений для каждой ячейки матрицы 9x9 (игровое поле Судоку). В первую ячейку матрицы вставляется цифра "1" и проверяется, допустимо ли присутствие этой цифры в данной ячейке.

По правилам Судоку, значение ячейки допустимо, если оно не повторяется в других ячейках в этом же ряду, в этой же колонке, а также не повторяется в этом же сегменте.

Если цифра "1" недопустима, то значение увеличивается на единицу и в эту же ячейку матрицы вставляется цифра "2", которая также проверяется на допустимость. Если цифра "2" допустима, то индекс (порядковый номер следующей ячейки матрицы) увеличивается на единицу. И процесс подбора начинается опять. В новую ячейку записывается цифра "1" и т.д. до последней 81-ой ячейки.

И все бы ничего, но есть большая (10%) вероятность того, что во время подбора значений, согласно правилам Судоку, компьютер не сможет вставить в ячейку ни одного значения. Происходит зависание. Такая ситуация может произойти, если значение вписываемой цифры увеличивалось от 1 до 9, но ни одна цифра не подошла т.к. правила Судоку запрещали.

В такой ситуации необходимо очищать текущую ячейку и предыдущую ячейку. Затем необходимо вернуться на предыдущую ячейку и начать подбор значений, только не с "1", а с того значения, которое было ранее в этой ячейке.

2.1.2 Алгоритм решения судоку

Решая очередную и очень простую Судоку, я пытался определить те шаги, которые должна предпринять машина, чтобы достичь результата. Перечислю те ходы, которые позволяют решить простую Судоку:

Присоединяйся

Зарегестрируйся с помощью социальных сетей.

Публикуй

Опиши работу, прикрепи файлы и назначь цену.

Зарабатывай

Получай пассивный доход с продажи работ.

Тебе понадобится 5 минут для публикации работы на сайте.
Похожие работы
Купить

500,00 

(без учета комиссии 3,8 %)

Курсовая Судоку.zip
1143402
Оцени работу

рейтинг

Поделись работой с друзьями

Мы не грузим циферки, чтоб ты увидел контент как можно быстрее;

Комментарии (1)

ramil9209

/ /

Оставить комментарий

Ты не можешь комментировать

Только зарегестрированые пользователи имеют возможность комментировать работы
Курсовая работа. Игра Судоку
Курсовая работа игра Судоку на Java, разработанная в среде Javaeclipse. Данная работа содержит программу судоку, исходники программы и пояснительную записку.
Категория: Образование
Стоимость: 500,00