Игра 'Галочки-Нолики'

  • Вид работы:
    Контрольная работа
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    250,17 Кб
  • Опубликовано:
    2014-11-11
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Игра 'Галочки-Нолики'

ВВЕДЕНИЕ

Наименование программы

Интеллектуальная логическая игра «Галочки-нолики».

Краткая характеристика

Игра «Галочки-нолики» позволяет пользователю выбрать поле 3х3, играть против компьютера и ходить крестиками во время игры. Данная игра предназначена для тренировки логического мышления пользователя.

Назначение программы

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

Данная контрольная работа посвящена разработке игры «Галочки-нолики», реализованная с применением объектно-ориентированного программирования.

Игра «Галочки-нолики», описанная в данной работе, является полноценным программным продуктом, готовым для использования. Она обладает доступным, понятным и наглядным для пользователя интерфейсом.

ПРОЕКТИРОВАНИЕ ПРОГРАММЫ

Общая схема программы

Программа состоит из следующих файлов:Noliki.exe - исполняемый файл;.vbp- файл, содержащий исходный текст программы;

Описание основных составляющих игры «Галочки-Нолики»

Так как наше поле имеет размер 3x3.Игра включает в себя 18 не видимых для пользователя картинок, каждая имеет свое отдельное наименование Picture1 и так далее по счету. С Picture1 по Picture9 отвечают за «галочки», остальные начиная с Picture10 по Picture18, отвечают на «нолики».Так же отвечающих за них 18 кнопок имеющих наименования Command1 далее по счету. С Command1 по Command9 отвечают за работу Picture c «ноликами»,то есть кнопки Command1 по Command9 соответствуют Picture10 по Picture18.По точно такому же принципу основаны кнопки начиная с Command10 по Command18 соответствуют Picture1 по Picture9.

Так же имеется два таймера Timer1 и Timer2. Timer1 отвечает за проверку на наличие комбинаций выигрыша, еще он отвечает за подсчет количества побед. Timer2 выполняет работу по проверке возможного ничейного исхода игры. Имеются так же три Frame, на Frame1 расположены две кнопки ,это кнопка «Игра»(Command21) и кнопка «Выход»(Command24). На Frame2 расположены: 4 Label и три кнопки, это кнопка «Начать»(Command25), кнопка «Назад»(Command23), кнопка «Сброс»(Command20).

Так выглядит программа во время запуска:


Так во время работы:


Кнопки и картинки логически приравнены друг к другу:

«Галочки»: Picture1=Command10; Picture2=Command11; Picture3=Command12;=Command13; Picture5=Command14; Picture6=Command15; Picture7=Command16; Picture8=Command17; Picture9=Command18.

«Нолики»: Picture10=Command1; Picture11=Command2; Picture12=Command3;=Command4; Picture14=Command5; Picture15=Command6; Picture16=Command7; Picture17=Command8; Picture18=Command9.

Объявление переменныхn As Integer- Переменная «n» отвечает за подсчет очков игравшего «галочками» e As Integer- Переменная «e» отвечает за подсчет очков игравшего «ноликами» k As Integer- Переменная «k» выполняет работу с таймером по проверке ничьей по Command18Sub Command1_Click() - Начало работы кнопки= k + 1 - При нажатии на кнопку к переменной прибавляется плюс один..Visible = True - При нажатии появляется «нолик»..Left = 100000 - Кнопка отправляется в космос, пользователь ее не видит .Left = 100000- тоже самое происходит и с этой кнопкой, она отвечает за «галочку»..Visible = False -Так как пользователь игравший за «нолики» уже сходил все .Visible = False - остальные кнопки работающие как «нолики» автоматически .Visible = False - исчезают, на их месте появляются кнопки «галочки» .Visible = False - функция Visible(Видимость) может иметь значение либо.Visible = False - True(Видимый) либо False(Невидимый)..Visible = False.Visible = False.Visible = False.Visible = FalsePicture2.Visible = True Then- Если Picture2(«галочка) активна,

Command11.Visible = False - Command11(соответствует «нолику») становится невидимой..Visible = True - В противном случае она становится видимой, активной.IfPicture3.Visible = True Then - далее точно так же происходит проверка на наличие активной Command12.Visible = False - «галочки». Проверяется каждая клетка в которой возможно уже - активна галочка, кроме этой кнопки так как при ее нажатии сработал «нолик»..Visible = TrueIfPicture4.Visible = True Then.Visible = False.Visible = TrueIfPicture5.Visible = True Then.Visible = False.Visible = TrueIfPicture6.Visible = True Then.Visible = False.Visible = TrueIfPicture7.Visible = True Then.Visible = False.Visible = TrueIfPicture8.Visible = True Then.Visible = False.Visible = TrueIfPicture9.Visible = True Then.Visible = False.Visible = TrueIfSub - Завершение работы кнопки

С остальными кнопками работает точно такой же алгоритм действий. При нажатии на кнопку, она становится невидимой, на её месте появляется соответствующая ей картинка, это может быть либо «нолик» либо «галочка». Проверяются все возможные варианты, и программа выдает картинку в данной клетке.

Основные кнопки

«Игра»Sub Command21_Click(Index As Integer).Visible = False - Frame1 становится невидимым.Visible = True - Frame2 становится видимымSub

«Выход»Sub Command24_Click()- Завершение работы программы ,выход.Sub

«Начать»Sub Command25_Click().Visible = False - Frame2 становится невидимым.Enabled = True - включается Таймер1.Visible = True - включается видимость всех кнопок «Галочек».Visible = True.Visible = True.Visible = True.Visible = True.Visible = True.Visible = True.Visible = True.Visible = True= 0 - на этот момент переменная k=0Sub

«Назад»Sub Command23_Click().Left = 360 - Происходит возврат всех кнопок на свои старые координаты.Left = 360.Left = 2400.Left = 2400.Left = 4440.Left = 4440.Left = 360.Left = 360.Left = 2400.Left = 2400.Left = 4440.Left = 4440.Left = 360.Left = 360.Left = 2400.Left = 2400.Left = 4440.Left = 4440.Visible = False - Все кнопки «галочки» и «нолики» становятся не видимыми.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False - Все картинки «галочки» и «нолики» становятся не видимыми.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Enabled = False - Таймер1 отключается.Visible = True - Frame1 видимый.Visible = False - Frame2 невидимыйSub

«Сброс»

Здесь тот же самый код что и в кнопке «Назад»,за исключением 5 добавленных строк: = 0 - переменная e=0= 0 - переменная n=0= 0 - переменная k=0.Caption = n - Label4 приравнивается к переменной «n».Caption = e - Label5 приравнивается к переменной «e»

Таймеры

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

В этой части кода выполняется проверка на одну из возможных победных комбинаций при игре за «Галочки»:Sub Timer1_Timer()Picture1.Visible = True And Picture2.Visible = True And Picture3.Visible = True Then.Visible = False -Если Picture1,2,3 активны то .Visible = False - все остальные клеточки становится невидимыми.Visible = False - остаются видима только эта победная комбинация.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False

n = n + 1 - При нажатии на кнопку к переменной прибавляется плюс один.

Label4.Caption = n - Label4 приравнивается к переменной «n».Enabled = False - Таймер1 отключается= 0 - переменная «k» имеет значение равное нулю.Visible = True - Frame2 становится видимымIf

Таким же образом производится проверка остальных возможных победных комбинаций при игре за «Галочки».

В этой части кода выполняется проверка на одну из возможных победных комбинаций при игре за «Нолики»:Picture10.Visible = True And Picture11.Visible = True And Picture12.Visible = True Then.Visible = False - Если Picture10,11,12 активны то.Visible = False - все остальные клеточки становится невидимыми.Visible = False - остаются видима только эта победная комбинация.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False= e + 1 -При нажатии на кнопку к переменной прибавляется плюс один..Caption = e - Label5 приравнивается к переменной «e».Enabled = False -Таймер1 отключается= 0 - переменная «k» имеет значение равное нулю.Visible = True - Frame2 становится видимымIf

В этой части кода происходит проверка на результат ничейного исхода игры:k = 9 Then - если переменная k=9 тогда.Visible = True - Frame3 становится видимым.Visible = False - Frame2 становится невидимым.Visible = False - Все клеточки становятся невидимыми.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = FalseIfSubесли Timer1 отключен,Timer2 возвращает все кнопки на свои места и скрывает их. В основном он выполняет функцию сброса. Исходный код:Sub Timer2_Timer()Timer1.Enabled = False Then -Если Timer1 отключен тогда= 0 - переменная «k» приравнивается к нулю.Left = 360 - кнопки возвращаются на свои координаты.Left = 360.Left = 2400.Left = 2400.Left = 4440.Left = 4440.Left = 360.Left = 360.Left = 2400.Left = 2400.Left = 4440.Left = 4440.Left = 360.Left = 360.Left = 2400.Left = 2400.Left = 4440.Left = 4440.Visible = False - Кнопки становятся невидимыми.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False - Картинки становятся невидимыми.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = False.Visible = FalseIfSub

Руководство по использованию

Чтобы запустить программу, необходимо нажать NEW_KUR.exe из соответствующей директории.

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

тестирование игра программа

Анализ результатов разработки программы

Для тестирования работы программы были использованы различные варианты расположения фишек на различных полях. Программа работает правильно без явных сбоев. В таблице рекордов программа корректно выполняет считывание данных из файла и производит запись или перезапись данных в файл.

ЗАКЛЮЧЕНИЕ

В ходе написания программы были использованы элементы объектно-ориентированного программирования. Основу программы составили классы. Было использовано переопределение стандартных операций для переменных абстрактных типов, а так же работа с графикой, строками и т.д.

Пользователю не придется тратить много времени на освоение правил игры «Галочки-нолики». Простота и наглядность интерфейса делают игру удобной в использовании.

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

Похожие работы на - Игра 'Галочки-Нолики'

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!