Разработка логической игры "Пятнашки"

 

СОДЕРЖАНИЕ


Введение

. РАЗВИТИЕ VISUAL BASIC

.1Visual Basic: прошлое и настоящее

.2 Версии Visual Basic

2. ИГРА «ПЯТНАШКИ»

2.1 История создания

.2 Математическое описание

.3 Алгоритм

.4 Разновидности и вариации игры

. РАЗРАБОТКА ПРОЭКТА

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

ЗАКЛЮЧЕНИЕ


ВВЕДЕНИЕ


До изобретения кубика Рубика для многих людей знакомство с головоломками начиналось с пятнашек, так часто называют известную игру 15. С пятнашек начинается история игр с дыркой головоломок,в которых фишки перемещаются по игровому полю за счёт того, что одно из мест на поле свободно. У пятнашек есть множество родственников, которые как раз и образовывают целый раздел этих головоломок. Игру 15 придумал в 70-х годах XIX-го века прославленный американский изобретатель головоломок Сэмюэль Лойд. Время появления его игрушки и известного всем кубика Рубика разделяют ровно сто лет. Любопытно, что возраст обоих изобретателей, когда они придумали свои знаменитые головоломки, был одинаков, немногим больше тридцати. До пятнашек никакая другая головоломка таким успехом не пользовалась. Суть игры состоит в том, чтобы расставить все фишки по своим местам, за исключением 14 и 15. Если переставить хотя бы одну фишку, то расклад получится также верным, кроме последних.14 будет стоять на месте 15, а 15 на месте 14 что также является верным решением. Пятнашки являются третьей по известности и популярности механической головоломкой в мире, уступая только разве что «маститым» кубику Рубика <#"justify">1. РАЗВИТИЕ VISUAL BASIC


1.1 Visual Basic: прошлое и настоящее


Visual Basic для Windows появился около 10 лет назад. Дебют состоялся 20 марта 1991 года на выставке «Windows World», хотя своими корнями он уходит к программе Ruby, написанной Аланом Купером (Alan Cooper) в 1988 году.

Бесспорно, появление Visual Basic произвело настоящую сенсацию. Стив Гиб-сон (Steve Gibson) в журнале «InfoWorld» назвал Visual Basic «потрясающим новым чудом», которое «радикально изменит подход к программированию для Microsoft Windows». Чарльз Петцольд (Charles Petzold), автор знаменитой книги, посвященной программированию для Windows на языке С, написал в «New York Times»: «Visual Basic представляет настоящую угрозу для благополучия тех, кто зарабатывает себе на жизнь, разъясняя программистам сложности программирования для Windows» (вряд ли к комментарию Петцольда стоит относиться серьезно, поскольку с того знаменательного дня были проданы миллионы книг, посвященных VB). Еще решительнее высказался Стюарт Элсоп (Stewart Alsop): он назвал Visual Basic «идеальной средой программирования для 90-х годов».

Но 90-е годы уже прошли, поэтому никого не удивит тот факт, что Visual Basic .NET отличается от обычного Visual Basic так же сильно, как Visual Basic версии 1 отличается от своего предшественника QuickBasic. Хотя из прежнего опыта использования Visual Basic можно вынести много полезного, переход на платформу .NET и Visual Basic .NET (сокращенно VB .NET) сопровождается такими же основательными изменениями, как и переход с QuickBasic для DOS на VB1 для Windows.


1.2 Версии Visual Basic


Первые две версии Visual Basic для Windows хорошо подходили для создания прототипов программ и демонстрационных приложений - но этим все и ограничивалось. В обеих версиях отличная среда программирования сочеталась с относительной простотой языка. Сам язык обладал относительно бедными возможностями. С появлением VB3 и новых средств работы с базами данных, требовавших изучения новой модели программирования, первая реакция нередко была обескураживающей: «Зачем они испортили VB?!» Сейчас становится понятно, что включение поддержки баз данных в VB3 было необходимо, чтобы Visual Basic из «игрушечного языка» превратился в серьезный инструмент программирования. В VB4 появились базовые возможности для создания объектов, а следовательно - базовые средства объектно-ориентированного программирования. В VB5 и VB6 объектно-ориентированные аспекты языка были расширены, появились новые возможности создания элементов и использования интерфейсов. Однако сам язык постепенно утрачивал целостность, поскольку объектно-ориентированные средства строились на базовом фундаменте, в котором их поддержка не предусматривалась. Например, правильность создания объектов в Visual Basic не гарантировалась - программисту приходилось применять особые синтаксические конструкции вместо конструкторов, используемых практически во всех объектно-ориентированных языках. В итоге разработчики VB пришли к выводу, что поддержка VB на платформе .NET потребует новых изменений - например, использование .NET Framework требует полноценной объектной ориентации языка.

Вероятно, при знакомстве с изменениями VB основные трудности возникнут не в связи с новшествами в среде IDE или появлением новых ключевых слов, а из-за необходимости радикального пересмотра парадигмы программирования на VB. В частности, чтобы в полной мере использовать преимущества VB5 и VB6, с объектно-базированного подхода, обладавшего весьма ограниченными возможностями создания новых объектов, приходилось переходить на объектно-ориентированный подход, в инструментарии которого, например, важное место занимают интерфейсы. К сожалению, большинство программистов VB, выросших на этом продукте, ранее никогда не использовали принципы объектно-ориентированного программирования. Когда в VB впервые появились классы, многие программисты VB понятия не имели, что это такое и зачем они нужны.

Но даже эти ограниченные возможности, появившиеся в VB5 и VB6, при правильном применении упрощали работу над большими проектами. Например, они позволяли создавать компоненты многократного использования (такие, как элементы управления), а на более прозаическом уровне - просто приводить код в порядок, упрощая его сопровождение. В некоторых случаях удавалось исключить оператор Select Case, нередко порождавший большие проблемы с сопровождением.


2. ИГРА «ПЯТНАШКИ»


Пятнашки - популярная головоломка. Придуманная в 1878 году Ноем Чемэном. Существует вариант для восьми элементов. Представляет собой набор одинаковых квадратных костяшек с нанесёнными числами, заключённых в квадратную коробку. Длина стороны коробки в четыре раза больше длины стороны костяшек для набора из 15 элементов и в три раза больше для набора в 8 элементов, соответственно в коробочке остаётся незаполненным одно квадратное поле. Цель игры - перемещая костяшки по коробке добиться упорядочивания их по номерам, желательно сделав как можно меньше перемещений.


.1История создания


С 1891 <#"justify">Алгоритм ни в коем разе не претендует на оптимальный и самый лучший.

И так по шагам:

. Ставим "1" на свое место.

. Ставим "2" на свое место.

. Ставим "3" на место "4".

. Ставим "4" на место "8".

Таким образом получаем следующий расклад (рисунок 2.1).


12_3 912104 68115 1514137 Рисунок2.1 - Шаг 1


. Ставим "3" и "4" на свое место

. Ставим "5" и "6" на свое место "7" и "8" аналогично "3" и "4"


1234 5 6_7 1012118 1514139 Рисунок 2.2 - Шаг 2


. Ставим "7" и "8" на свои места

Выставленные фишки больше никогда не трогаем.

. Ставим "9" в правый нижний угол, чтобы исключить неопределенную ситуацию

. Ставим "13" на место "9", "9" на место "10"

Получаем (Рисунок 2.3)


1234 5678 1391214 101511_ Рисунок 2.3 - Шаг 3

10. Ставим "13" и "9" на свои места и больше их не трогаем.

. Загоняем "10" сначало на место "14" а затем в правый нижний угол, чтобы выстроить правильную последовательность.

Получаем (Рисунок 2.4).


1234 5678 9151411 1312_10 Рисунок 2.4 - Шга 4


11. Ставим "11" на место "10", чтобы предотвратить неопредленную

ситуацию.

. Ставим "10" в правый нижний угол.

. Ставим "11" на "15".

. Поднимаем "10" на место"12" под нее ставим "11" и "12" на место "15"

Получаем (Рисунок 2.5).


1234 5678 915_10 13141211 Рисунок 2.5 - Щаг 5


. И очевидными шагами достигаем цели.


.4 Разновидности и вариации игры


Подробно останавливаться на вариациях, в которых только увеличены размеры поля, мы не будем. Собрать головоломку 4х4, 5х5…, 10-10 не столько сложнее, сколько просто дольше. Но есть ряд игр, в основу которых лег игровой механизм пятнашек (или внешняя схожесть с головоломкой), но игровой процесс которых имеет свои нюансы. Часть из них мы и рассмотрим ниже.YOUR....

Головоломка, разновидность обычных пятнашек 4х4, но с подвохом. На плитки нанесены не числа, а буквы, которые в собранном состоянии образуют фразу RATE YOUR MIND PAL (что можно перевести как: «пораскинь мозгами, приятель»). Собранная головоломка показывается «жертве», и затем буквы перемешиваются. На первый взгляд бессистемно. На самом деле, «тасующий» загоняет букву R из слова YOUR в верхний угол, на место буквы R слова RATE. Большинство людей оставит букву R на «ее месте» - в левом верхнем углу, и будет пытаться расположить по порядку остальные буквы. Эта задача безнадежна, потому что, такая перестановка букв R, изменяет четность композиции и «жертва» решает ее фрагмент с нечетным параметром беспорядка. В лучшем случае у нее получится фраза «RATE YOUR MIND PLA». В русском варианте используется фраза (без знаков препинания) «СЛОН СПИТ СТОЯ. А ВЫ?». Для расстановки ловушки следует поменять местами буквы С в словах СЛОН и СПИТ (Рисунок 2.6).


Рисунок 2.6 - RATE YOUR

Broken heart («Разбитое сердце»).

Эту головоломку недавно придумали в Японии. Доска в ней имеет размеры 17x17. Играют восемью плитками 6x5. Половина из них уложена горизонтально, а вторая половина - вертикально. В собранном состоянии на фишках виден рисунок сердечка. Перед игрой фишки перемешивают, а цель игры в том, чтобы переставить прямоугольники так, чтобы собрать сердце заново. Сделать это не так просто, как может показаться, ведь три «горизонтальных» прямоугольника не помещаются в одной строке, а три «вертикальных» - в одном столбце. (Рисунок 2.7).


Рисунок 2.7 - Broken heart («Разбитое сердце»)

.

Автором головоломки является Милтон Бредли, запатентовавший ее в 1982 году. На поле 3х3 необходимо перемещать (по «пятнашечному» принципу) 8 плиток, подсвеченных светодиодами. Как только плитка занимает свое место, ее светодиод загорается. Цель игры - «зажечь» все плитки (Рисунок 2.8).

Рисунок 2.8 - Genius

.

Разновидность пятнашек с полем 4х4, запатентованная Довом Несисом в 1998 году. Плитки под пауком необходимо выстроить так, чтобы получился рисунок паутины. Сложности игре добавляет то, что оказавшись на своем месте, плитка, располагающаяся под одной из 6 лапок паука, блокируется и не принимает участие в дальнейшем перемещении (Рисунок 2.9).


Рисунок 1.9 - Virus

Sokoban <#"395" src="doc_zip5.jpg" />

Рисунок 1.10 - Sokoban <#"201" src="doc_zip6.jpg" />

Рисунок 1.11 - Магический квадрат <#"173" src="doc_zip8.jpg" />

Рисунок 2.12 - Минус-кубик <#"justify">Головоломка Минус-шарик напоминает вышеописанный минус-куб. Тот же прозрачный куб, но заполненный не кубиками, а шариками трех цветов. Для обеспечения возможности перемещения шариков одного шарика не хватает. Цель игры заключается в том, чтобы расставить шарики так, чтобы образовалось три слоя, окрашенных каждый в свой цвет.

Существовал западный аналог головоломки, называющийся «Mad Marbles», в котором на месте центрального шарика располагалась крестовина (Рисунок 2.13).


Рисунок 2.13 - Минус шарик

Sliding Piece Puzzle (головоломки с подвижными блоками).

Большой и очень популярный на Западе пласт головоломок, к которому можно отнести и пятнашки, и большинство других головоломок из данной статьи. Игровой механизм головоломки уже знаком нам - существует ряд плиток (обычно различного размера и формы), которые надо упорядочить определенным образом, используя свободное место на игровом поле. (Рисунок 2.14).


Рисунок 2.14 - Sliding Piece Puzzle


3. РАЗРАБОТКА ПРОЭКТА


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


Требуется разработать проект в Visual BASIC, который будет представлять собой игру пятнашки, имеющую несколько разных картинок.


.2 Описание Проекта собери картинку

visual basic пятнашки

Сразу при запуске приложения «15.exe» можно увидеть специфический интерфейс (Рисунок 3.1).


Рисунок 3.1 - Окно запуска программы


Окно содержит две кнопки < и > они служат для выбора картинок заложенных в программу (Рисунок 3.2).


Рисунок 3.2 - Кнопки смены картинок


Если картинка не выбрана, программа выдаёт сообщение о том что надо выбрать картинку (Рисунок3.3).


Рисунок 3.3 - Ошибка


В данной версии игры представлены три картинки (Рисунок 3.4).

Рисунок 3.4 - Предоставленный выбор картинок


Когда картинка выбрана нажимаем кнопку «СТАРТ!!!», иначе, если вы передумали играть, можно нажать кнопку «выход» и приложение закроется (Рисунок 3.5).


Рисунок 3.5 - Картинка выбрана, нажимаем «СТАРТ!!! »


После нажатия кнопки «СТАРТ!!!» открывается новое окно в котором мы видим с левой стороны образец картинки, а справа эта же картинка только разбитая на 16 частей, которые нам и предстоит собрать (Рисунок 3.5).


Рисунок 3.5 - Основное игровое окно


Рисунок 3.6 - Выбор режима игры

В игре существует два режима игры :

Таймер - вы сами вводите определённое время и за это время вы должны выставить картинку.

Секундомер - отображает время игры.

Когда время игры выбрано, нажимаете кнопку «СТАРТ!!!» (Рисунок 3.7).


Рисунок 3.7 - Нажимаем кнопку «СТАРТ!!!»


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

При выборе режима игры «Таймер», если ваше время заканчивается, то приложение выдаёт ошибку и выводит нас на первое окно (рисунок 3.8).


Рисунок 3.8 - Ошибка

Когда картинка собрана нажимаете кнопку «Готово» и приложение, добавляет 16 квадрат и выдает сообщение (Рисунок 3.9).


Рисунок 3.9 - Картинка полностью собрана


Можете нажать кнопку «Назад» и попробовать собрать ещё одну картинку.


ЗАКЛЮЧЕНИЕ


Все поставленные цели, по разработке проекта Собери картинку были выполнены полностью. Этот проект может заменить стандартную игру пятнашки придуманную в 1874 году Ноем Палмер Чемпмэном. Она состояла из шестнадцати пронумерованных квадратиков, которые надо было сложить в ряды по четыре штуки так, чтобы сумма чисел в каждом ряду была равна 34. Затем сын Ноя Чепмэна, Фрэнк Чепмэн привёз доработанные головоломки в Сиракузы (штат Нью-Йорк) <http://ru.wikipedia.org/wiki/%D0%A1%D0%B8%D1%80%D0%B0%D0%BA%D1%83%D0%B7%D1%8B_%28%D0%9D%D1%8C%D1%8E-%D0%99%D0%BE%D1%80%D0%BA%29>, а затем в Хартфорд <http://ru.wikipedia.org/wiki/%D0%A5%D0%B0%D1%80%D1%82%D1%84%D0%BE%D1%80%D0%B4> (Коннектикут), где слушатели Американской школы для слабослышащих начали производство головоломки.

Данный проект имеет замес-то стандартных фишек с цифрами, фишки с нарезками картинок, которые надо собрать воедино.


СОДЕРЖАНИЕ Введение . РАЗВИТИЕ VISUAL BASIC .1Visual Basic: прошлое и настоящее .2 Версии Visual Basic 2. ИГРА «ПЯТНАШКИ» 2.1 Ис

Больше работ по теме:

КОНТАКТНЫЙ EMAIL: [email protected]

Скачать реферат © 2018 | Пользовательское соглашение

Скачать      Реферат

ПРОФЕССИОНАЛЬНАЯ ПОМОЩЬ СТУДЕНТАМ