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

ЛИЧНЫЙ КАБИНЕТ 

 

Здравствуйте гость!

 

Логин:

Пароль:

 

Запомнить

 

 

Забыли пароль? Регистрация

Повышение уникальности

Предлагаем нашим посетителям воспользоваться бесплатным программным обеспечением «StudentHelp», которое позволит вам всего за несколько минут, выполнить повышение уникальности любого файла в формате MS Word. После такого повышения уникальности, ваша работа легко пройдете проверку в системах антиплагиат вуз, antiplagiat.ru, etxt.ru или advego.ru. Программа «StudentHelp» работает по уникальной технологии и при повышении уникальности не вставляет в текст скрытых символов, и даже если препод скопирует текст в блокнот – не увидит ни каких отличий от текста в Word файле.

Результат поиска


Наименование:


курсовая работа Разработка игры морской бой

Информация:

Тип работы: курсовая работа. Добавлен: 31.05.2012. Сдан: 2011. Страниц: 23. Уникальность по antiplagiat.ru: < 30%

Описание (план):


АКВТ.2203.ПР41.01,15ПЗ 

СОДЕРЖАНИЕ 

Введение ................................................................................................................. 3
1. Общий  раздел ………………………………………………............................. 4
1.1. Цель  разработки …………….………………………………….................... 4
1.2. Характеристика  используемых при работе аппаратно-программных  средств .................................................................................................................... 4
1.3. Обоснование  выбора среды программирования ......................................... 9
2. Специальный  раздел ........................................................................................ 11
2.1. Постановка  задачи ........................................................................................ 11
2.2. Анализ  входной и выходной информации  …............................................. 12
3. Технологический  раздел ................................................................................. 13
3.1. Описание  алгоритма ..................................................................................... 13
3.1.1. Описание  алгоритма магазина «UniversalShop» ................................... 13
3.2. Описание  программы «UniversalShop»..................................................... 14
3.3. Описание  процесса отладки программы .................................................... 25
3.4. Анализ  результатов решения задачи……………………………………..
3.5. Инструкция  пользователя ............................................................................ 26
Заключение
Приложение 1 Исходный код программы 
 

 

       
       ВВЕДЕНИЕ 

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

        

    ОБЩИЙ РАЗДЕЛ
 
       
      Цель  разработки
       С развитием вычислительной техники и совершенствованием программного обеспечения возникают невиданные ранее возможности для создания совершенно новых типов игр. Но языки программирования позволяют также перенести практически любую настольную игру на ЭВМ. Цель данной работы – создать компьютерный аналог всем известной настольной игры «Морской бой». Но в отличие от оригинальной программы, где обязательно должно быть минимум два участника, наша программа позволяет играть одному пользователю. Это достигается благодаря использованию в программе основных концепций искусственного интеллекта. Это значительно улучшает степень используемости программы и расширяет круг потенциальных пользователей. Целью разработки является программа, которая позволяет играть в морской бой и отличается следующими особенностями:
    разработанная система полностью реализует основные возложенные на нее функции;
    система оснащена дружеским интерфейсом;
    разработанная система является интегрированной;
    программа имеет хороший дизайн.
    оптимизироваться для использования ее на компьютере со средней производительностью, с помощью разделения программы на отдельные модули;
    позволяет пользоваться ею одному игроку за счет присутствия в программе элементов искусственного интеллекта

           1.2.   Характеристики  используемых при  работе аппаратно-программных средств

         Программа была разработана  на персональном компьютере со следующей конфигурацией:
    центральный микропроцессор – Intel Celeron 2400 МГц;
    оперативно запоминающее устройство – 512 Мб;
    накопитель на жестком диске – Seagate Barracuda 80 Гб;
    накопитель на гибком магнитном диске – 3,5’’ емкостью 1,44 Мб;
    накопитель CD-RW – Nec CD-RW NR-9400A;
    видеоадаптер – Radeon 9200SE;
    монитор SAMSUNG Sync Master 765MB;
    клавиатура Genius Comfy KB-21e Scroll
    мышь Genius Optical;
    принтер Epson 460 Color;
    операционная система Windows XP.
         Минимальные системные  требования для работы с электронным  учебником «Управление качеством»:
    центральный микропроцессор с тактовой частотой не менее 166 МГц;
    оперативно запоминающее устройство не менее 32 Мб;
    свободное пространство на диске 50 Мб;
    накопитель CD-ROM;
    клавиатура
    мышь;
    принтер;
    операционная система Windows XP
 
1.3. Обоснование выбора  среды программирования 
       Программное приложение «Морской бой» выполнено в среде объектно-ориентированного  программирования Delphi 6.
       Delphi - это мощная система визуального  объектно-ориентированного программирования, позволяющая решать  множество  задач, в частности:
    создавать законченные приложения для Windows самой различной направленности, от чисто вычислительных и логических, до графических мультимедиа;
    быстро создавать профессионально выглядящий оконный интерфейс для любых приложений, написанных на любом языке; интерфейс удовлетворяет требованиям Windows и автоматически настраиваться на ту систему, которая установлена на компьюторе пользователя, поскольку использует многие функции, процедуры, библиотеки Windows;
    создавать свои динамически присоединяемые библиотеки (DDL) компонентов, форм, функций, которые затем можно использовать из других языков программирования;
    создавать мощные системы работы с локальными и удаленными базами данных любых типов; при этом имеются  средства автономной отладки приложений  с последующим выходом в сеть;
    формировать и печатать сложные отчеты, включающие таблицы, графики и т.п.;
    создавать справочные системы (файлы .hlp), как для своих приложений , так и для любых других, с которыми можно работать не только из приложения но и просто через Windows;
    создавать профессиональные программы установки для приложений Windows, учитывающие всю специфику и все требования Windows.
       Среда программирования Delphi 6 дает возможность  скомпилировать готовый загрузочный exe файл, что дает возможность работы программы при отсутствии на компьютере Delphi.
       В процессе проектирования приложения Delphi автоматически создает код головной программы и отдельных модулей. В модули мы сами вводим код, создавая, обработчики различных событий. Но головную программу, как  правило, мы не трогаем и даже не видим ее текст. 

 

2. СПЕЦИАЛЬНЫЙ РАЗДЕЛ
       
           2.1. Постановка задачи
      Была  поставлена задача разработать компьютерный аналог настольной игры «Морской бой». Данный проект представляет собой компьютерную игру, обладающую встроенными элементами искусственного интеллекта. Программа  предназначена для обычных пользователей  компьютеров и призвана обеспечить интересное проведение их свободного времени.
         Программа должна предусмотреть: 
    разработанная система должна полностью реализовать основные возложенные на нее функции;
    система должна быть оснащена дружеским интерфейсом;
    разработанная система должна являться интегрированной;
    программа должна иметь имеет хороший дизайн.
    должна быть оптимизирована для использования ее на компьютере со средней производительностью, с помощью разделения программы на отдельные модули;
    должна позволять пользоваться ею одному игроку за счет присутствия в программе элементов искусственного интеллекта
 
      2.2. Анализ входной  и выходной информации
      В данной программе входной информацией  будет являться:
      - информация о расстановке кораблей  на игровом поле игрока и его компьютерного соперника
      - выбранная сложность противника
      - настройки для программы, хранящиеся  в файле conf.ini
      - действия пользователя, т.е. содержание  хода игрока, а также действия  его компьютерного соперника 

      Выходные  данные:
      -  результат игры (проиграл или выиграл игрок)
      -  список всех ходов игры, выводящийся  в мемо-поле;
      -  информация о результате текущего  хода – задет корабль, потоплен  он или промах.
      - количество подбитых кораблей  у обоих сторон
      - в конце игры, в случае поражения  игрока, выводится информация о расстановке кораблей противника.
      - предусмотрена возможность полного  сохранения результатов игры  в HTML-формате.
 

    ТЕХНОЛОГИЧЕСКИЙ РАЗДЕЛ
      Описание  алгоритма
        Описание  схемы алгоритма  программы:
   -  открытие  главного окна программы;
   - настройка установок программы;
   -  установка  сложности компьютерного соперника  (слабый, средний, сильный);
   -  расстановка  кораблей на игровом поле или  загрузка схемы из файла;
   -  первый  ход;
   -  процесс  игры;
   -  сохранение  результата в HTML;
   -  выход  из приложения.
        Описание схемы данных
      Данные, которые использовались для создания дипломного проекта: журналы, каталоги, internet. Данные, используемые программой хранятся в отдельных файлах:
      - папка Shemes – хранит файлы схем игры
      - папка Sounds – в ней хранятся звуки, которые программа использует во время своей работы
      - файл config.ini – в нем содержатся основные установки, используемые программой
      - файл fonts.txt – содержит шрифты программы
      файл lt.ini – содержит координаты главного окна программы
 
        Описание  схемы взаимодействия программы
 
      При запуске программы появляется главная  форма с расположенными на ней  графическими элементами управления. Это:
      - два игровых поля для расположения  на них кораблей
      - поле, в котором отражается статистика  игры
      - мемо-поле, в котором отражается все ходы, сделанные в игре 

      - главное меню программы
      - список для выбора сложности  бота
      - управляющие кнопки
      На  главной форме пользователь может  играть.
      На  форме «Сохранение схемы» пользователь может сохранить схему расстановки  кораблей.
      На форме «Загрузка/Удаление схемы» пользователь может загрузить или удалить схему.
      На  форме «Настройки» пользователь может задать все необходимые  настройки для игры.
      На  форме «О программе» можно узнать о разработчике программы.

     3.2.Описание программы

            Программный продукт Магазин «Морской бой» написан в среде визуального объектно-ориентированного программирования Delphi 6.
      Данная  программа состоит из:
      MainUnit – главный модуль программы, отвечает за процесс игры;
      ConfUnit – модуль, отвечающий за установку и сохранение настроек, заданных пользователем;
      LoadDelShemeUnit – модуль, отвечающий за загрузку и удаление схем игры;
      SaveShemeUnit – модуль, который отвечает за сохранение схемы игры;
      HTMLUnit – модуль, который за сохранение результатов игры в формате HTML;
      CleanerUnit – модуль, отвечающий за очистку ненужных данных в файлах схем;
      AboutUnit – модуль окна «О программе»
              Головная программа начинается  с ключевого слова Program, после которого пишется имя программы. Оно совпадает с именем файла, в котором сохраняется проект. Это же имя присваивается исполняемому файлу приложения. По умолчанию это имя Project1. После заголовка в тексте программы располагается оператор uses. Этим оператором перечисляются модули, загружаемые программой. Первый модуль Forms – системный, а следующие – модули разработанных программ. Следующая строка текста – {$R *.RES} представляет собой директиву компилятора. Затем, после ключевого слова begin и до последнего завершающего программу end с точкой (end.), записано тело программы.
      Рассмотрим  теперь, как выглядят тексты модулей.
      Модуль  начинается с ключевого слова Unit, после которого пишется имя модуля. Оно совпадает с имеем файла, в котором сохраняется модуль. По умолчанию для первого модуля имя равно Unit1, для второго Unit2 и т.д.
      Текст модуля состоит из двух основных разделов: interface – открытый интерфейс модуля и implementation – реализация модуля. Все, что помещается непосредственно в раздел interface (типы, переменные, константы, функции, процедуры), может быть использовано другими модулями программы. Все, что помещается в раздел implementation – внутреннее тело модуля. Внешние модули не могут видеть типы, переменные, константы, функции и процедуры, размещенные в разделе реализации.
      В разделе interface после оператора uses, содержащего список подключаемых элементов, можно видеть заготовку объявления класса вашей формы, подготовленную в Delphi. Имя класса формы – TForm1. Класс содержит два раздела: private – закрытый раздел класса, и  public – открытый раздел класса. То, что объявлено в разделе public, будет доступно для других классов и модулей. То, что объявлено в разделе private, доступно только в пределах данного модуля. 

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

Таблица 1 

1 2 3
Shape (фигура) Размещает на форме  объект, представляющий собой правильную геометрическую программу
Label (метка) Размещает в  форме объекты, предназначенные для создания текстовой информации, надписей и примечаний.
Edit (текстовое поле) Размещает в  форме текстовое поле, предназначенное для ввода текстовой информации, чисел и дат.
Button (кнопка управления) Размещает в  форме кнопки управления для инициации  действий, выполнения команд, запуска  программ.
MainMenu (главное меню) Размещает на форме  главное меню.
ComboBox (поле со списком) Создает в форме  объект, содержащий одновременно поле ввода и раскрывающийся список

3.3. Процесс отладки  программы

            Отладка программы – это завершающая  стадия разработки. Именно на  этой стадии разработки программы происходит комплексное тестирование работоспособности и надежности программного продукта. Как правило, первоначально комплексная отладка производиться разработчиком. Только разработчик, зная все тонкости разработки, может выявить те недостатки в работе программы, которые могут возникнуть через несколько недель.
            Программа построена таким образом,  чтобы действия пользователя  не приводили к повреждению  самой программы. При неправильных  действиях со стороны пользователя программа предупреждает его об этом.
       Необходимо  проверить, действительно ли правильно  программа работает именно так, как было задумано при разработке программы. Для этого было проведено комплексное тестирование программы. В главной  форме  разместили корабли и провели одну партию игры. Во время игры выводится вся статистика, соперник действует также без ошибок.
         При входе в программу можно  увидеть главную форму (см. рисунок  1)

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

3.4. Анализ результатов  решения задачи

            Результатом разработки, проведенной  в данном курсовом проекте,  стала система, удовлетворяющая следующим требованиям:
    разработанная система полностью реализует основные возложенные на нее функции;
    система оснащена дружеским интерфейсом;
    разработанная система является интегрированной;
    программа имеет хороший дизайн.
    оптимизироваться для использования ее на компьютере со средней производительностью, с помощью разделения программы на отдельные модули;
    позволяет пользоваться ею одному игроку за счет присутствия в программе элементов искусственного интеллекта
           В целом цель, поставленная в начале курсового проектирования, была достигнута. В программу вошли практически все необходимые требования для пользователя.
     Несмотря  на предполагаемые изменения в программе  уже на данном этапе разработки система  является полноценным программным  продуктом, который после прохождения им заключающей стадии разработки – тестирования на стадии разработчика, может быть использована для предоставления необходимой информации для рядовых пользователей. 

 

3.5. Инструкция пользователя
При входе в  программу появляется, мы видим главную форму.

Пункт меню Файл - Настройки отвечает за установление настроек программы.

Затем при помощи размещаются корабли на правом игровом  поле.

Ход делается также  при помощи мыши – ей отмечается выбранная пользователем для  удара клетка на левом игровом поле. Если промах – то она отмечается синим цветом, если попадание – красным, уничтоженные корабли отмечаются темно-красным цветом. Клетки, прилежащие непосредственно к кораблю, выделяются.

После завершения игры её можно сохранить в формате HTML, выполнив пункт меню Файл - Сохранить в HTML.

 

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

ПРИЛОЖЕНИЕ 1
Исходный  код программы
unit MainUnit;
interface
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, StdCtrls, Buttons, Menus, Gauges, ComCtrls, XPMan,
  MMSystem, Registry;
type
  TFormMain = class(TForm)
    StatusGroupBox: TGroupBox;
    StatusLabel: TLabel;
    MissShape: TShape;
    TargetShape: TShape;
    MissLabel: TLabel;
    TargetLabel: TLabel;
    RotateButton: TSpeedButton;
    DelButton: TSpeedButton;
    DeleteShipPopupMenu: TPopupMenu;
    N1: TMenuItem;
    N2: TMenuItem;
    PlayButton: TSpeedButton;
    KillShape: TShape;
    KillLabel: TLabel;
    Bevel1: TBevel;
    N11: TMenuItem;
    N21: TMenuItem;
    N31: TMenuItem;
    N41: TMenuItem;
    MainMenu1: TMainMenu;
    N3: TMenuItem;
    N4: TMenuItem;
    N5: TMenuItem;
    N8: TMenuItem;
    N9: TMenuItem;
    N6: TMenuItem;
    N7: TMenuItem;
    N10: TMenuItem;
    N12: TMenuItem;
    N13: TMenuItem;
    N14: TMenuItem;
    procedure FormShow(Sender: TObject);
    procedure Shape1MouseUp(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure FormCreate(Sender: TObject);
    procedure Shape65MouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    procedure Shape65MouseUp(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure N2Click(Sender: TObject);
    procedure PlayButtonClick(Sender: TObject);
    procedure N9Click(Sender: TObject);
    procedure ReDrawAll;
    procedure SetShip( StartTag:integer; FinishTag:integer; BoP:char );
    procedure ReDraw( BoP:char );
    procedure NewGame;
    procedure Play;
    function WriteCount:string;
    procedure Zero( BoP:char );
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure KillShapeMouseUp(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
  private
  public
   path:string;
   { чтоб  схемы сохранять можно было }
   e_s, m_s:array[1..4, 1..4] of integer; //матрицы с координ. каждого корабля
   { для  html }
   e_sh, m_sh:array[1..8, 1..8] of integer; //матриксы с инфой об  игровом поле
   alph:string[8]; // -= смерть от напалма =-
   { для  конфа }
   game:integer; //0-не играемся, 1-играемся, 2-наигралися
  end;
var
  FormMain: TFormMain;
  set_ships:array[1..4] of bool; //трю - кор. стоит
  cnt:array[0..1] of integer; //запись счета
  paluba:integer; //сколькипалубный  кор. ставим сейчас
и т.д.................


Перейти к полному тексту работы


Скачать работу с онлайн повышением уникальности до 90% по antiplagiat.ru, etxt.ru или advego.ru


Смотреть полный текст работы бесплатно


Смотреть похожие работы


* Примечание. Уникальность работы указана на дату публикации, текущее значение может отличаться от указанного.