ан виводиться відповідне повідомлення (малюнок 11)
Малюнок 11
Якщо гравець побажає зберегти або завантажити гру, то при виборі відповідного пункту меню на екран буде виведений файловий діалог відповідно для збереження або для завантаження файлу (малюнок 12).
Малюнок 12
При виборі в меню довідки пункт «Про програму», гравець може отримати інформацію про додатку (малюнок 13)
Малюнок 13
Якщо гравець побажає ознайомитися з правилами гри, він може вибрати в меню довідки пункт «Як грати», після чого на екрані з'явиться відповідне вікно (малюнок 14)
Малюнок 14
Висновок
У ході виконання курсової роботи були закріплені і поглиблені навички використання об'єктно-орієнтованого підходу до програмування.
За допомогою мови C ++ і бібліотеки Qt було спроектовано і розроблено готове кроссплатформне додаток, що відповідає всім вимогам поставленого завдання.
Додаток здійснює розстановку кораблів на ігровому полі 10х10, надає вибір противника, здійснює збереження і завантаження гри з файлу. Також в грі відстежується правильність ходів, правильність розстановки кораблів і момент закінчення гри. Додаток забезпечує можливість почати нову гру на чистому полі і скидання попередньої гри.
Крім цього, налаштування гри винесені в конфігураційний файл settings.conf і завантажуються в програму з нього.
Також за допомогою програми WinRar був зроблений інсталятор, що дозволяє вибрати шлях розпакування програми.
багатоплатформовий комп'ютерної гра клас
Список використаних джерел
1. «Qt 4.5. Професійне програмування на С ++ »М. Шлее - СПб .: БХВ-Петербург, 2010. 896 с.
. «С ++: керівництво для початківців» Г. Шілдт - М .: Видавничий дім «Вільямс», 2005. 672 с.
. «Qt 4: програмування GUI на С ++» Ж. Бланшет, М. Саммерфілд - М .: КУДИЦ-ПРЕСС, 2008. 736 с.
. «Мова програмування С ++. Лекції і вправи »С. Прата - М .: ТОВ« І.Д. Вільямс », 2012. 1248 с.
Додаток А
Вихідний текст програми
Файл battleship.h
# ifndef BATTLESHIP_H
# define BATTLESHIP_H
# include ships.h
BattleShip: public Ships
{: ();
~ BattleShip ();
};
# endif//BATTLESHIP_H
Файл battleship.cpp
# include battleship.h
:: BattleShip ()
{i;=4;
=new int * [amountDeck]; (i=0; i lt; amountDeck; i ++) [i]=new int [2];
}
:: ~ BattleShip ()
{i; (i=0; i lt; amountDeck; i ++) [] location [i]; [] location;
}
Файл boat.h
# ifndef BOAT_H
# define BOAT_H
# include ships.h
Boat: public Ships
{: ();
~ Boat ();
};
# endif//BOAT_H
Файл boat.cpp
# include boat.h
:: Boat ()
{i;=1;
=new int * [amountDeck]; (i=0; i lt; amountDeck; i ++) [i]=new int [2];
}
:: ~ Boat ()
{i; (i=0; i lt; amountDeck; i ++) [] location [i]; [] location;
}
Файл cruiser.h
# ifndef CRUISER_H
# define CRUISER_H
# include ships.h
Cruiser: public Ships
{: ();
~ Cruiser ();
};
# endif//CRUISER_H
Файл cruiser.cpp
# include cruiser.h
:: Cruiser ()
{i;=3;
=new int * [amountDeck]; (i=0; i lt; amountDeck; i ++) [i]=new int [2];
}
:: ~ Cruiser ()