Автор: Пользователь скрыл имя, 18 Декабря 2011 в 13:44, курсовая работа
Программа обеспечивает возможность создания файла и хранения в нем информации о вызываемом городе, заказываемом номере телефона, ФИО заказчика, номере телефона заказчика и длительности оплаченного разговора а также выполнение требуемых функций по работе с этими данными. Курсовая содержит руководство пользователя, описание разработанных функций, листинг и тестирование программы, блок-схемы алгоритмов всех используемых функций и тестирование программы.
Введение………………………………………………………………….…… 3
Глава 1. Выбор метода реализации……………………...………………... 5
1.1 Обоснование выбора языка программирования………………………... 5
Техническое описание языка программирования……………………… 6
1.3 Технические требования к компьютеру для решения задачи …………. 7
Глава 2. Теоретические основы……………………...…………………… 8
2.1Динамические массивы …………………………………………………... 8
2.2Динамическое распределение памяти …………………………………… 9
2.3 Классы …………………………………………………………………….. 9
2.4 Структуры ……………………...…………………………………………. 10
Глава 3. Руководство программиста……………………...……………… 12
Глава 4. Руководство пользователя ……………………...………………. 15
Глава 5. Математическое и программное обеспечение ………………. 16
5.1.Математическое обеспечение……………………...………………………................................. 16
5.2.Спецификация функций ……………………...………………………….. 19
Глава 6. Тестирование программы ……………………...……………….. 25
Заключение…………………………………………………...………………. 31
Список литературы………………………
Глава
6.
Тестирование программы
При входе в программу появляется меню с выбором пунктов меню, доступных для любого пользователя:
1. Управление списком
2. О программе
0. Выйти из программы
Рисунок
1. – Главное меню программы
Теперь
посмотрим, что происходит при нажатии
пользователем каждого пункта меню. При
неверном вводе данных во всех пунктах
меню выходит сообщение об ошибке. Номера
пунктов - номера клавиш на клавиатуре.
1. Управление списком. Для осуществления нужно нажать на клавиатуре клавишу «1». Предоставляется возможность создать базу данных, включающую 7 полей, как показано на рис.2:
Рисунок
2. – Управление списком
2. Добавление заказа. Для осуществления нужно нажать на клавиатуре клавишу«1».
Рисунок 3. – Добавление заказа
1) Введите ФИО заказчика. Для ввода использовать алфавитную клавиатуру. После окончания ввода нажать клавишу «Enter».
2)
Введите название вызываемого
города. Для ввода использовать алфавитную
клавиатуру. После окончания ввода нажать
клавишу «Enter».
3)
Введите номер телефона
заказчика. Для ввода использовать цифровую
клавиатуру. После окончания ввода нажать
клавишу «Enter».
4) Введите вызываемый номер телефона. Для ввода использовать цифровую клавиатуру. После окончания ввода нажать клавишу «Enter».
5) Введите длительность оплачиваемого разговора. Для ввода использовать цифровую клавиатуру. После окончания ввода нажать клавишу «Enter».
Заказ
добавлен! Для продолжения нажать
любую клавишу.
3. Добавление срочного заказа в очередь. Для осуществления нужно нажать на клавиатуре клавишу«2».
Рисунок 4. –Добавление срочного заказа
1)
Введите ФИО заказчика. Для ввода использовать
алфавитную клавиатуру. После окончания
ввода нажать клавишу «Enter».
2) Введите название вызываемого города. Для ввода использовать алфавитную клавиатуру. После окончания ввода нажать клавишу «Enter».
3)
Введите номер телефона
заказчика. Для ввода использовать цифровую
клавиатуру. После окончания ввода нажать
клавишу «Enter».
4) Введите вызываемый номер телефона. Для ввода использовать цифровую клавиатуру. После окончания ввода нажать клавишу «Enter».
5)
Введите длительность
оплачиваемого разговора. Для ввода
использовать цифровую клавиатуру. После
окончания ввода нажать клавишу «Enter».
6) Введите порядковый номер очереди. Для ввода использовать алфавитную клавиатуру. После окончания ввода нажать клавишу «Enter».
Заказ
добавлен! Для продолжения нажать
любую клавишу.
4. Сформировать общий список заказов. Для осуществления нужно нажать на клавиатуре клавишу«4». Для продолжения нажать любую клавишу.
Рисунок
5. – Формирование общего списка
5. Сформировать список заказов в указанный город. Для осуществления нужно нажать на клавиатуре клавишу«5». Для продолжения нажать любую клавишу.
Рисунок
6. –Формирование списка заказов в указанный
город
6. Сортировка списка по времени заказанного. Для осуществления нужно нажать на клавиатуре клавишу «6». Для продолжения нажать любую клавишу.
Рисунок
7. – Сортировка списка по времени
7. Назад. Для осуществления нужно нажать на клавиатуре клавишу «0».
8. Возвращаемся в главное меню
Выбираем пункт «2» О программе. Для осуществления нужно нажать на клавиатуре клавишу «2». Для продолжения нажать клавишу «0».
Рисунок
8. – Возвращение в главное меню
9.Выход из программы. Для осуществления нужно нажать на клавиатуре клавишу «enter», для отмены действия нажать на клавиатуре «esc»
Рисунок 8. – Выход из программы
Заключение
На современном этапе развития общества, когда происходит полная компьютеризация, время требует от программистов разработки новых программ, которые сумеют облегчить труд людей в разных сферах жизни. Современному человеку необходимы программы для реализации их возрастающих масштабов деятельности и данная программа им в этом поможет.
Предоставленная программа предназначена для работы с базой данных «Электронный журнал» для любого пользователя.
Свойства программы - быстрый ввод, обработка и поиск данных в данной базе. Программа включает в себя следующие процедуры: создание новой базы данных, добавление и удаление записей, поиск записей и сортировка записей по данному полю. Проведенное тестирование показало работоспособность программы и соответствие её требованиям задания на курсовой проект.
Данная программа легка в обращении для конечного пользователя. Не требует от него каких–либо знаний в программировании или в устройстве компьютера.
Код
программы имеет понятный вид. В
ней используются стандартные функции
языка С++. Благодаря чему данную
программу можно легко модернизировать
для нужд пользователя.
Список
литературы
1.Пахомов
Б.И. С/С++ и MS Visual C++2008 для начинающих.–
СПб.: БХВ–Петербург.2009.–624с.: ил.
2.Хортон,Айвор
Visual C++ 2005: базовый курс.: Пер. с англ.– М.:ООО
«И.Д. Вильямс», 2007.–1152с.:ил.
3.Основы
алгоритмизаии и программирования язык
С, Демидович
4.Методические
указания к лабораторным работам по
программированию на языке С++.
5.Т.А. Павловская,
Ю.А. Щупак. С/C++. Структурное программирование:
Практикум. – СПб.: Питер, 2007. – 239 с.: ил.
6.Якушев
Д.М. «Философия»
7.Красиков И.В.,
Красикова И.Е. C++. Просто как дважды два
- 2 изд. – ЭКСМО, 2007. - 336 с.: ил.
8.Борис
Пахомов. C/C++ и MS Visual C++ 2010 для начинающих.
изд. БХВ-Петербург, 2011
9.Информационные сайты:
http://vstudio.softline.ru/
http://valera.asf.ru/cpp/book/
http://msdn.microsoft.com/ru-
http://trubetskoy1.narod.ru/
Приложение
Исходный текст программы
LIST.H
/* Поступающие заказы хранятся в памяти ЭВМ, то есть ведется электронный журнал.
По каждому заказу хранятся:
- вызываемый город;
- заказываемый номер телефона;
- ФИО заказчика;
- номер телефона заказчика;
- длительность оплаченного разговора.
Реализовать функции:
- прием заказа;
- исполнение очередного заказа;
- определение номера заказа в общей очереди заказов;
- определение номера заказа для заданного города;
- включение срочного заказа в очередь под номером N;
- формирование списка заказов в заданный город;
- упорядочение
заказов по возрастанию
#include<iostream>
#include<iomanip>/*
usingnamespace std;
// элементсписка
class elem {
public:
unsignedint
index, // номер заказа в общей очереди
time; // длительность оплаченного разговора, в секундах
char
teleph [50], // заказываемый номер телефона
tel [50], // номер телефона заказчика
name [50], // ФИО заказчика
city [50]; // вызываемый город
elem
* next, // указатель на следующий элемент списка
* prev; // указатель на
предыдущий элемент списка
// конструктор
elem() {
next = prev = NULL;
index = time = 0;
teleph[0] = tel[0] = name[0] = city[0] = '\0';
}
// перегрузкаоператоракопирования
elem &operator = (const elem & element) {
strcpy(teleph, element.teleph);
strcpy(tel, element.tel);
strcpy(name, element.name);
strcpy(city, element.city);
index = element.index;
time = element.time;
return * this;
}
};
// списоксэлементами
class list {
private:
elem
* head, // указатель на начальный элемент списка
* tail; // указатель на конечный элемент списка
unsignedint N; //
кол-во элементов в списке
// изменяем нумерацию списка в связи со вставкой или удалением элемента