Разработка программы на языке С++

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

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 11.02.2020
Размер файла 1,6 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования

«Тверской государственный технический университет» (ТвГТУ)

Курсовая работа

По дисциплине «Технологии программирования»

Выполнил:

Ломин В.С.

В данной работе будет проведена работа по предварительному проектированию, разработке, созданию и тестированию программы, которая будет называться «NIM», являющаяся, по своей сути, простейшей компьютерной игрой, предназначенная для лиц старше 6 лет. Цель создания данной программы - развитие мышления у участников этой игры, в частности - обдумывание ходов «наперёд», предугадывание ходов соперника, что развивает навык построения своей собственной стратегии.

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

Номер варианта

Название задачи

23

Ним

Предварительное проектирование программного обеспечения

Цель работы: Проведение предварительного проектирования конкретной программы. Составить перечень требований и функциональных характеристик разрабатываемой программы.

Разработка документа «Постановки задачи».

Пункты

Описание

1. Заголовок к программе

NIM

2. Условие задачи

«Ним». Имеются три кучки спичек. Двое играющих по очереди делают ходы. Каждый ход заключается в том, что из одной какой-то кучки берется произвольное ненулевое число спичек. Количество спичек в кучке лежит в отрезке от 10 до 50. Выигрывает тот, кто взял последнюю спичку

3. Начало\окончание работы

Октябрь 2019 года - Декабрь 2019 года

4. Основание для разработки программы

Основанием для разработки программы является задание на выполнение курсовой работы по курсу: технология программирования (высшего учебного заведения)

5. Краткая характеристика объекта разработки

Объектом разработки является компьютерная игра.

Игрокам предоставляется три кучки спичек.

Из одной кучки каждый из двух игроков по очереди берёт любое количество спичек. Число ходов неограниченно.Тот, кто берёт последнюю - побеждает

6. Пользователь

Пользователями являются люди (2 человека), которые по очереди вводят данные в диалоговое окно приложения.

Предназначена для лиц старше 6 лет

7. Цель и назначение разработки

Целью компьютерной игровой программы «Ним» является развитие мышления, в частности - обдумывание ходов «наперёд», предугадывание ходов соперника, что развивает навык построения своей собственной стратегии

8. Основные требования к программе

Программное приложение должно обеспечивать следующие функции:

Игрокам предоставляется три кучки спичек.

Количество спичек в кучке составляет от 10 до 50 штук.

Из одной кучки каждый из двух игроков по очереди берёт любое количество спичек. Число ходов неограниченно.

Тот, кто берёт последнюю - побеждает

9. Входная информация

Вид игры: стратегия;

Человек - человек
Ввод имен игроков;

Ввод количества спичек в каждой из трёх кучек (от 10 до 50)

10. Выходная информация

Результат игры в соответствии с заданными правилами

11. Требования к аппаратному и программному обеспечению

Операционная система : Microsoft Windows XP SP2 и выше;

Microsoft Visual C++ 2005 и выше;

Процессор - Intel Pentium MMX 166 Мгц и выше;

Видеокарта - 2 MB видеопамяти и выше;

Оперативная память - 32 MB SDR RAM с частотой 166 Мгц и выше;

Дисковод для чтения CD-RW дисков (650 МВ) или флоппи-дисковод для чтения 3'5 дискет (нескольких, объёмом 1,44 или 2,88 мегабайт);

HDD\SSD - 10 MB свободного пространства на носителе;

Звуковая карта - не требуется (по причине отсутствия звука в игре);

Устройства ввода-вывода (экран, клавиатура)

12. Внешние ограничения

Не выявлено (не предусмотрено)

13. Эффективность

Незначительное время запуска и завершения программы;

Высокая скорость отклика в процессе эксплуатации программного приложения

14. Безопасность данных от несанкционированного доступа

Отсутствует

15. Эргономические характеристики

Комментирование некоторых шагов.

Отсутствие сбоёв (ошибок) - надежное ПП;

Интерфейс - с контрастирующими цветами, крупный шрифт

16. Мобильность

Мобильность обеспечивается переносом всех файлов программы на любой компьютер, соответствующий требованиям, описанным в пункте 11

17. Окупаемость капиталовложений

Так как работа выполняется в рамках изучения курса «технология программирования» на базе материально-технического обеспечения ВУЗа - рассмотрение данного вопроса не является актуальным

18. Другие соглашения сторон

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

19. Терминология

Microsoft Visual C++ -- интегрированная среда разработки приложений на языке C++, разработанная корпорацией Microsoft и поставляемая либо как часть комплекта Microsoft Visual Studio, либо отдельно в виде бесплатного функционально ограниченного комплекта Visual C++ Express Edition

Итоги работы: Проведено предварительное проектирование конкретной программы.

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

Разработан документ «Постановки задачи».

Разработка программного обеспечения

Цель разработки программного обеспечения - определение этапов разработки отдельно взятой программы и разработка календарного плана создания конкретной программы. Во время разработки ПО необходимо подробно проанализировать этапы разработки конкретной программы (ее жизненный цикл), начиная от возникновения потребности в ней до полного прекращения ее использования вследствие ее морального старения или потери необходимости решения соответствующих задач.

№п/п

Наименование этапа разработки программы

Срок выполнения

Примечания

Начало

Окончание

1

Проектирование:

15.10.2019

25.10.2019

Как и для кого создавать программу

1.а

Предварительное проектирование программного обеспечения

15.10.2019

16.10.2019

Проведение предварительного проектирования конкретной программы.

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

Разработка документа «Постановки задачи».

1.б

Разработка программного обеспечения

16.10.2019

17.10.2019

Определение этапов разработки программы.

Разработка календарного плана создания программы

1.в

Построение функциональной схемы системы программного обеспечения

17.10.2019

19.10.2019

Проведение функциональной декомпозиции решаемой задачи.

Построение функциональной схемы

1.г

Внешнее проектирование программного обеспечения

19.10.2019

21.10.2019

Проведение внешнего проектирования конкретной программы.

Разработка взаимодействия разрабатываемой программы с пользователем: сценарий, экранные формы, набор подсказок, и пр.

1.д

Разработка архитектуры программного обеспечения

21.10.2019

23.10.2019

Разработка архитектуры программного изделия

1.е

Описание алгоритма

23.10.2019

25.10.2019

Разработка алгоритма решения задач.

Запись алгоритма в блок схемной форме

2

Создание программы

27.10.2019

28.11.2019

Процесс записи кода

3

Тестирование

30.11.2019

24.12.2019

Дебаггинг, оптимизация кода

4

Эксплуатация

25.12.2019

-

Использование программы пользователями

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

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

Процесс разработки программного обеспечения состоит из нескольких этапов, из которых в узком смысле лишь непосредственное создание программного кода носит название «программирование». В широком смысле под программированием часто подразумевается весь процесс разработки ПО, а людей, занимающихся этим видом деятельности, называют программистами.

3. Тестирование - это процесс устранения ошибок в работающей программе. Встречаются ошибки алгоритмические и синтаксические. Вторые наиболее легко устранимы, среда разработки может указать на них, выдав ошибку после компиляции. . Что касается алгоритмических ошибок - их поиск часто затруднён, поэтому для их устранения требуется не один день. Этап считается завершённым, если программа работает без сбоев при 3-5 запусках.

4.Использование программы пользователями в определённых целях на специально предназначенном оборудовании.

Декомпозиция 1-го уровня:

Итоги разработки программного обеспечения - определены этапы разработки отдельно взятой программы и разработан календарный план создания конкретной программы.

Построение функциональной схемы системы программного обеспечения

Цель работы:

-проведение функциональной декомпозиции решаемой задачи;

-построение функциональной схемы.

Нулевой уровень:

Итоги работы:

-проведена функциональная декомпозиция решаемой задачи;

-построена функциональная схема.

Внешнее проектирование программного обеспечения

Цель работы:

- проведение внешнего проектирования конкретной программы;

- разработка взаимодействия разрабатываемой программы с пользователем: сценарий, экранные формы, набор подсказок, и пр.

Итоги работы:

- проведено внешнее проектирование конкретной программы;

- разработано взаимодействие разрабатываемой программы с пользователем: сценарий, экранные формы, набор подсказок, и пр.

Разработка архитектуры программного обеспечения

Цель работы: разработать архитектуру программного изделия.

Центральный диспетчер

A

B

АA

AB

ВA

BB

ACA

ACB

ACAA

ACAB

ACBA

ACBB

ACBC

Информация

Управление

Глобальные переменные

Модуль

Функции модуля

A

Обработка входных данных

B

Модуль для взаимодействия пользователей (игроков) и программы

AA

Получение данных о количестве пользователей

AB

Предоставление возможности ввести данные

AC

Подключение модуля обработки согласно алгоритму игры

BA

Модуль вывода изображения на экран устройства, с которого запущена программа

BB

Модуль обработки сигналов клавиатуры устройства, являющейся устройством ввода для пользователей (игроков)

ACA

Проверка на правильность

ACB

Модуль математических расчётов

ACAA

Корректность данных

ACAB

Соответствие на условие

ACBA

Модуль действия вычитания

ACBB

Модуль соответствия единице

ACBC

Модуль генератора случайных целых положительных чисел, от 10 до 50

Итоги работы: разработана архитектура программного изделия.

Описание алгоритма

Цель работы:

- разработка алгоритма решения задач;

- запись алгоритма в блок схемной форме.

Итоги работы:

- разработан алгоритм решения задач;

- алгоритм записан в блок схемной форме.

Пошаговая разработка программы

Цель работы: освоить метод пошаговой разработки программ.

a) Первый шаг. Включаем все библиотеки, которые понадобятся для корректной работы программы:

#include<iostream>

#include<ctime>

#include<cstdlib>

#include<string>

b) Второй шаг. Используем программу для оптимизации и краткости кода: программный алгоритмический язык тестирование

using namespace std;

c) Третий шаг. Вводим функцию, в которую будет помещен код программы:

int main() {

d) Четвёртый шаг. Используем команду, позволяющую выводить кириллицу на экран:

setlocale(0, "");

e) Пятый шаг. Инициализация переменных, которые потребуются в программе:

int first_K = 0;

int two_K = 0;

int three_K = 0;

string name1;

string name2;

int Variant = 0;

int A = 0;

int hod_name1;

int hod_name2;

f) Шестой шаг. Создание Случайного генератора целочисленных положительных чисел от 10 до 50:

srand(time(NULL));

first_K = 10 + rand() % 41;

two_K = 10 + rand() % 41;

three_K = 10 + rand() % 41;

g) Седьмой шаг. Ввод имен двух пользователей-игроков:

cout << "Введите имя 1-го игрока: ";

getline(cin, name1);

cout << endl;

cout << "Введите имя 2-го игрока: ";

getline(cin, name2);

cout << endl;

h) Восьмой шаг. Выбор одной из трёх сгенерированных случайным генератором кучек со спичками (1, 2 или 3). Затем происходит вывод сообщения о количестве спичек в выбранной кучке. Если введено некорректное или неправильное значение, то программа выводит сообщение об ошибке и просит вновь выбрать кучку, то есть ввести число 1, 2 или 3.

cout << "Выберите одну из трех кучек со спичками : ";

cin >> Variant;

cout << endl;

if (Variant >= 1 && Variant <= 3)

{

if (Variant == 1)

{

cout << "В вашей кучке " << first_K << " спичек";

A = first_K;

cout << endl;

}

if (Variant == 2)

{

cout << "В вашей кучке " << two_K << " спичек";

A = two_K;

cout << endl;

}

if (Variant == 3)

{

cout << "В вашей кучке " << three_K << " спичек";

A = three_K;

cout << endl;

}

}

else

{

cout << " Введено неверное значение ";

cout << endl;

goto AnyVariant;

}

i) Девятый шаг. Ход первого игрока. Если игрок вводит число, превышающее или равное количеству спичек в кучке, то выводится сообщение о невозможности такого хода, и попытка повторяется:

while (A > 1)

{

NN1:

cout << " Ходит " << name1 << " : ";

cin >> hod_name1;

if (hod_name1 >= A)

{

cout << "Такой ход невозможен.";

goto NN1;

}

j) Десятый шаг. Вычисление оставшихся спичек и вывод сообщения об их количестве в кучке после хода первого игрока:

cout << endl;

A = A - hod_name1;

cout << "Осталось " << A << " спичек (-ка) ";

cout << endl;

k) Одиннадцатый шаг. Если после хода первого игрока в кучке остается одна спичка, то происходит вывод сообщение о победителе, коим будет второй игрок, и игра завершается:

if (A == 1)

{

cout << "Победил " << name2;

break;

}

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

NN2:

cout << " Ходит " << name2 << " : ";

cin >> hod_name2;

if (hod_name2 >= A)

{

cout << "Такой ход невозможен.";

goto NN2;

}

m) Тринадцатый шаг. Вычисление оставшихся спичек и вывод сообщения об их количестве в кучке после хода второго игрока:

cout << endl;

A = A - hod_name2;

cout << "Осталось " << A << " спичек (-ка) ";

cout << endl;

n) Четырнадцатый шаг. Если после хода второго игрока в кучке остается одна спичка, то происходит вывод сообщение о победителе, коим будет первый игрок, и игра завершается:

if (A == 1)

{

cout << "Победил " << name1;

break;

}

}

cout << endl;

system (“pause”);

}

Итоги работы: освоен метод пошаговой разработки программ.

Запись текстов программ на алгоритмическом языке высокого уровня

Цель работы: запись текстов программ на алгоритмическом языке высокого уровня, используя правила стиля программирования.

#include<iostream>\\ включение необходимой библиотеки для корректной работы разработанного ПО

#include<ctime>\\ включение необходимой библиотеки для корректной работы разработанного ПО

#include<cstdlib>\\ включение необходимой библиотеки для корректной работы разработанного ПО

#include<string>\\ включение необходимой библиотеки для корректной работы разработанного ПО

using namespace std;\\ пространство имен std (позволяет сократить исходный код)

int main()\\ главная функция

{

setlocale(0, "");\\ команда для предоставления возможности вывода кириллицы на экран

int first_K = 0;\\ инициализация переменной (первой кучки спичек)

int two_K = 0;\\ инициализация переменной (второй кучки спичек)

int three_K = 0;\\ инициализация переменной (третьей кучки спичек)

string name1;\\ инициализация переменной (имя первого игрока)

string name2;\\ инициализация переменной (имя второго игрока)

int Variant = 0;\\ инициализация переменной (номера кучки спичек)

int A = 0;\\ инициализация переменной (количества спичек в выбранной кучке спичек)

int hod_name1;\\ инициализация переменной (количество спичек, которых взял первый игрок)

int hod_name2;\\ инициализация переменной (количество спичек, которых взял второй игрок)

srand(time(NULL));\\ функция, отвечающая за случайные числа

first_K = 10 + rand() % 41;\\ генератор случайных целых чисел от 10 до 50 для первой кучки

two_K = 10 + rand() % 41;\\ генератор случайных целых чисел от 10 до 50 для второй кучки

three_K = 10 + rand() % 41;\\ генератор случайных целых чисел от 10 до 50 для третьей кучки

cout << "Введите имя 1-го игрока: ";\\ вывод сообщения на экран

getline(cin, name1);\\ ввод имени первого игрока

cout << endl;\\ отступ строки

cout << "Введите имя 2-го игрока: ";\\ вывод сообщения на экран

getline(cin, name2);\\ ввод имени второго игрока

cout << endl;\\ отступ строки

AnyVariant:\\ переменная, отвечающая за возврат (к выбору кучек)

cout << "Выберите одну из трех кучек со спичками : ";\\ вывод сообщения на экран

cin >> Variant;\\ ввод номера кучки (1, 2 или 3)

cout << endl;\\ отступ строки

if (Variant >= 1 && Variant <= 3)\\ условие (если введено число 1, 2 или 3)

{

if (Variant == 1)\\ условие (если введено число 1)

{

cout << "В вашей кучке " << first_K << " спичек";\\ вывод кол-ва спичек в 1-й кучке

A = first_K;\\ приравнивание переменных

cout << endl;\\ отступ строки

}

if (Variant == 2)\\ условие (если введено число 2)

{

cout << "В вашей кучке " << two_K << " спичек";\\ вывод сообщения

A = two_K;\\ приравнивание переменных

cout << endl;\\ отступ строки

}

if (Variant == 3)\\ условие (если введено число 3)

{

cout << "В вашей кучке " << three_K << " спичек"; \\ вывод сообщения

A = three_K; \\ приравнивание переменных

cout << endl; \\ отступ строки

}

}

else\\ иначе (если была введена не 1, 2 или 3)

{

cout << " Введено неверное значение ";\\ вывод сообщения

cout << endl;\\ отступ строки

goto AnyVariant;\\ возврат к переменной AnyVariant

}

while (A > 1)\\ пока кол-во спичек в выбранной кучке больше 1

{

NN1:\\ ход первого игрока

cout << " Ходит " << name1 << " : ";\\ вывод собщения

cin >> hod_name1;\\ ввод кол-ва спичек первым игроком

if (hod_name1 >= A) \\ условие (если введено число, большее, чем кол-во спичек)

{

cout << "Такой ход невозможен.";\\ вывод сообщения

goto NN1;\\ повторение хода 1-м игроком

}

cout << endl;\\ отступ строки

A = A - hod_name1;\\ 1-й игрок убирает часть спичек из кучки

cout << "Осталось " << A << " спичек (-ка) ";\\ вывод сообщения

cout << endl;\\ отступ строки

if (A == 1)\\ условие (если осталась 1 спичка в кучке)

{

cout << "Победил " << name2;\\ вывод сообщения о победе 2-го игрока

break;\\ прерывание цикла

}

NN2:\\ ход второго игрока

cout << " Ходит " << name2 << " : ";\\ вывод сообщения

cin >> hod_name2;\\ ввод кол-ва спичек вторым игроком

if (hod_name2 >= A) \\ условие (если введено число, большее, чем кол-во спичек)

{

cout << "Такой ход невозможен.";\\ вывод сообщения

goto NN2;\\ повторение хода второго игрока

}

cout << endl;\\ отступ строки

A = A - hod_name2;\\ 2-й игрок убирает часть спичек из кучки

cout << "Осталось " << A << " спичек (-ка) ";\\ вывод сообщения

cout << endl;\\ отступ строки

if (A == 1)\\ условие (если кол-во спичек равно 1)

{

cout << "Победил " << name1;\\ вывод сообщения о победе 1-го игрока

break;\\ прерывание цикла

}

}

cout << endl;\\ отступ строки

system (“pause”);\\ функция для того, чтобы окно программы не закрывалось автоматически

}

Итоги работы: тексты программ записаны на алгоритмическом языке высокого уровня, используя правила стиля программирования.

Тестирование и отладка разработанной программы

Цель работы: Осуществить тестирование и отладку разработанной ранее конкретной программы на алгоритмическом языке высокого уровня.

1. Запускаем программу при помощи двойного нажатия левой кнопкой «мыши» по ярлыку NIM.EXE . Она запустилась и сразу нам предлагает ввести имя первого игрока:

2. Если мы вводим не имя на латинице, а число, то никаких ошибок не происходит, и программа нормально работает, выводя при этом введенное игроком число:

3. Если при ходе первого или второго игрока, когда нужно «брать спички из кучки» мы введем не число, а какой-либо иной символ, то программа «сломается». Нужно будет нажать левой кнопкой мыши на «крестик» вверху окна программы:

4. В случае ввода имени игрока не на латинице, а на кириллице, оно будет отображаться совершенно некорректно:

Итоги работы: Осуществлено тестирование и отладка разработанной ранее конкретной программы на алгоритмическом языке высокого уровня.

Составление документа «Руководство пользователя»

Цель работы: составить документ «Руководство пользователя» к разработанной ранее программе.

NIM.

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

«Ним». Имеются три кучки спичек. Двое играющих по очереди делают ходы. Каждый ход заключается в том, что из одной какой-то кучки берется произвольное ненулевое число спичек. Количество спичек в кучке лежит в отрезке от 10 до 50. Выигрывает тот, кто взял последнюю спичку.

2. Пользователь.

Пользователями являются люди (2 человека), которые по очереди вводят данные в диалоговое окно приложения.

Предназначена для лиц старше 6 лет

3. Цели.

Целью компьютерной игровой программы «Ним» является развитие мышления, в частности - обдумывание ходов «наперёд», предугадывание ходов соперника, что развивает навык построения своей собственной стратегии.

4. Системные требования.

Операционная система : Microsoft Windows XP SP2 и выше;

Microsoft Visual C++ 2005 и выше;

Процессор - Intel Pentium MMX 166 Мгц и выше;

Видеокарта - 2 MB видеопамяти и выше;

Оперативная память - 32 MB SDR RAM с частотой 166 Мгц и выше;

Дисковод для чтения CD-RW дисков (650 МВ) или флоппи-дисковод для чтения 3'5 дискет (нескольких, объёмом 1,44 или 2,88 мегабайт);

HDD\SSD - 10 MB свободного пространства на носителе;

Звуковая карта - не требуется (по причине отсутствия звука в игре);

Устройства ввода-вывода (экран, клавиатура)

5. Мобильность.

Мобильность обеспечивается переносом всех файлов программы на любой компьютер, соответствующий системным требованиям, указанным в пункте 4. Папка игры NIM включает в себя исполняемый файл

NIM.exe , а также файл NIM.cpp .

6. Эксплуатация программы.

1) Перемещение файлов игры в папке на носителе (Дискета, CD) к себе на компьютер, соответствующий требованиям, изложенным в пункте 4.

2) Осуществление запуска при помощи устройств ввода (клавиатура или мышь) исполняемого файла NIM.exe .

3) Ввод данных, требуемых программе, с клавиатуры:

а. Запускаем программу. Она запустилась и сразу нам предлагает ввести имя первого игрока:

б. Мы ввели имя первого игрока. Вводить нужно именно на латинице, а не на кириллице. Теперь программа требует ввести имя второго игрока:

в. Мы ввели имя второго игрока. Вводить нужно именно на латинице, а не на кириллице. Затем программа просит выбрать одну из трёх кучек со спичками, которые были ранее ею сгенерированы:

г. Введено неверное число, так как у нас три кучки, а не семь или более. Программа просит вновь выбрать кучку со спичками:

д. Теперь мы правильно выбрали кучку. Выводится сообщение о количестве спичек в выбранной кучке. После этого программа предлагает сделать ход первому игроку:

е. Первый игрок вводит большее количество спичек, чем есть в кучке. В этом случае выводится сообщение о недопустимости такого хода, и попытка повторяется:

ё. Первый игрок вводит допустимое число. На экран выводится сообщение о количестве оставшихся спичек в кучке. Ход передаётся второму игроку:

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

з. Второй игрок вводит допустимое число. На экран выводится сообщение о количестве оставшихся спичек в кучке. Ход передаётся первому игроку:

и. Первый игрок берёт такое количество спичек, после которого в кучке остаётся последняя. По правилам игры, в таком случае, побеждает второй игрок, и игра прекращается:

й. Второй игрок берёт такое количество спичек, после которого в кучке остаётся последняя. По правилам игры, в таком случае, побеждает первый игрок, и игра прекращается:

4) Остановка программы осуществляется при помощи клавиши Esc, или в самом конце, по требованию программы, при нажатии любой кнопки на клавиатуре.

7) Ограничения программы.

1. Недопустимость ввода кириллицы (только латиница);

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

Итоги работы: составлен документ «Руководство пользователя» к разработанной ранее программе.

Заключение

В результате выполнения курсовой работы по курсу «Технологии программирования», была разработана программа на языке С++.

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

В ходе работы было проведено предварительное проектирование программного обеспечения, построена функциональная схемы системы программного обеспечения, внешнее проектирование ПО, разработана его архитектура, построение алгоритма. Кроме того, осуществлена пошаговая разработка программы, запись текстов программы на алгоритмическом языке высокого уровня и её последующее тестирование.

Программа проста в отладке, а также даёт возможность использовать разработанные алгоритмы в будущем в других программах.

Размещено на Allbest.ru

...

Подобные документы

  • Программный комплекс для разработки программы транслирующей программу с языка Pascal на язык С++. Построение логической и арифметической модели решения. Разработка компилятора для программы. Методы отладки программы и создание для нее документации.

    курсовая работа [742,6 K], добавлен 03.07.2011

  • Разработка комплекса алгоритмов. Кодирование и компиляция. Тестирование, отладка, испытание и сдача программы. Минимальные системные требования для использования Delphi 7. Написание программы с использованием инструментального языка высокого уровня.

    курсовая работа [2,7 M], добавлен 21.02.2011

  • Основные понятия и определения теории графов: теоремы и способы задания графа, сильная связность графов. Построение блок-схем алгоритма, тестирование разработанного программного обеспечения, подбор тестовых данных, анализ и исправление ошибок программы.

    курсовая работа [525,6 K], добавлен 14.07.2012

  • Разработка программы тестирования студентов по MS PowerPoint с кодом на языке Delphi. Создание алгоритма для решения функциональных требований задачи. Описание переменных, вспомогательных процедур, входных и выходных данных для реализации программы.

    курсовая работа [1,5 M], добавлен 21.09.2010

  • Разработка программы с использованием принципов объектно-ориентированного программирования на языке высокого уровня С средствами Microsoft Visual Studio 2010. Построение алгоритма реализации. Класс программы, инструкция по использованию программы.

    курсовая работа [1,0 M], добавлен 26.12.2013

  • Создание программы с использованием принципов объектно-ориентированного программирования на языке высокого уровня С# средствами Microsoft Visual Studio 2010. Построение алгоритма реализации. Определение математического аппарата, применение его в задаче.

    курсовая работа [500,4 K], добавлен 13.01.2015

  • Сравнительный анализ языков программирования высокого уровня Си и Паскаль. Реализация алгоритма обработки данных. Тестирование и отладка программы или пакета программ. Структура программы на языке Турбо Паскаль. Указатели и векторные типы данных.

    курсовая работа [233,5 K], добавлен 14.12.2012

  • Ознакомление с возможностями языка Си как средой программирования высокого уровня. Циклы программирования параметрического оператора for и функции форматированного ввода. Разработка программы средствами Си: блок-схема, текст и тестирование программы.

    контрольная работа [204,4 K], добавлен 26.01.2013

  • Разработка и тестирование программы класса Точка. Спецификация программы. Сценарий диалога с пользователем. Разработка структур данных и алгоритмов. Таблица параметров функций программы. Текст программы на языке C++. Особенности тестирования программы.

    лабораторная работа [43,1 K], добавлен 21.07.2012

  • Программа для выбираемой единицы измерения (градусы Фаренгейта или Цельсия) и для задаваемого значения температуры в этой единице измерения. Среда Delphi. Системные требования. Блок схема программы. Интерфейс. Тестирование и сопровождение программы.

    курсовая работа [447,6 K], добавлен 04.02.2009

  • Программирование на алгоритмическом языке Turbo Pascal на примере разработки алгоритма и программы расчета временной функции. Выбор, обоснование методов решения. Схемы алгоритмов основной программы и подпрограмм. Распечатка исходных и вычисленных величин.

    реферат [154,8 K], добавлен 15.03.2012

  • Составление оптимального расписания, где критерием оптимальности служит минимальное значение функции штрафа. Описание алгоритма и разработка программы на языке программирования высокого уровня Java в среде BlueJ. Проверка решения и построение графика.

    курсовая работа [67,1 K], добавлен 04.12.2012

  • Ввод и вывод чисел при помощи подключаемого модуля IO. Особенности работы с одномерными и двухмерными массивами. Тестирование состояние флагов. Рринципы и навыки работы с компилятором и отладчиком. Разработка схемы алгоритма программы на языке ассемблер.

    курсовая работа [1,3 M], добавлен 02.12.2009

  • Создание транслятора, обрабатывающего код программы на языке Паскаль и за счет эквивалентных операторов генерирующего программу на Си. Особенности внешней спецификации и работы лексического анализатора. Структура программы, вывод результатов на экран.

    курсовая работа [254,0 K], добавлен 02.07.2011

  • Составление программы на алгоритмическом языке Turbo Pascal. Разработка блок-схемы алгоритма её решения. Составление исходной Pascal-программы и реализация вычислений по составленной программе. Применение методов Рунге-Кутта и Рунге-Кутта-Мерсона.

    курсовая работа [385,0 K], добавлен 17.09.2009

  • Постановка задачи и математическое описание ее решения. Назначение программного обеспечения. Описание принятых идентификаторов. Выбор языка программирования и написание программы на входном языке. Методика отладки программы и проведение ее тестирования.

    курсовая работа [96,1 K], добавлен 25.06.2013

  • Этапы процедуры принятия решений. Разработка математического алгоритма. Блок-схема алгоритма работы программы. Разработка программы на языке программирования С++ в среде разработки MFC. Текст программы определения технического состояния станка с ЧПУ.

    курсовая работа [823,0 K], добавлен 18.12.2011

  • Разработка программного обеспечения для работы с информацией и ее обработкой на языке программирования Delphi. Описание алгоритмов процедуры работы со стеком - добавление, удаление элементов, редактирование записи. Инструкция по использованию программы.

    курсовая работа [2,9 M], добавлен 06.02.2013

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

    курсовая работа [2,1 M], добавлен 21.04.2012

  • Использование класса статических массивов структур и базы данных "ODER" при создании программы на языке С++. Основные формы выдачи результатов. Технические и программные средства. Тесты для проверки работоспособности алгоритма создания программы.

    курсовая работа [1,1 M], добавлен 17.03.2015

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.