- •Курсовая работа по дисциплине «Информатика и программирование»
- •1.Постановка задачи
- •2.Состав классов
- •2.1.2. Описание класса:
- •2.2.2. Описание класса:
- •2.3.2. Описание класса:
- •2.3.3. Описание методов класса
- •3.Схема взаимодействия классов
- •4. Список функций, не состоящих в классах.
- •5.1.Структура
- •5.2.Особенности организации
- •6. Пример работы программы
- •7.Список использованной литературы
- •8.Приложение
- •Код файла Сlass1.H
- •Код файла Сlass1.Cpp
- •Код файла Сlass2.Cpp
2.3.2. Описание класса:
struct turList{
int id; - идентификатор турагенства
char * fio; - указатель на данные туриста
int passN; - номер паспорта
int * Id; - массив идентификаторов оплаченных экскурсий
char * hotel; - название отеля
char * date; - дата вылета
int nDays; - число дней
turList *next; - указатель на следующий элемент
};
class Class3{
public:
Class3(): first(0), current(0) {}; - конструктор класса
void FileSave();
void FileLoad();
void Add(turList *);
bool Remove(int);
void Show();
void info(int, Class1 &, Class2 &);
private:
turList *first; - указатель на первый элемент
turList *current; - указатель на текущий элемент
};
2.3.3. Описание методов класса
void Class3::Add(turList * data) - метод добавления элемента в список туристов, приобретавших путёвки.
void Class3::Show() - метод вывода списка туристов, приобретавших путёвки, на экран.
bool Class3::Remove(int id) - удаление элемента списка по заданному id. На вход подается id.
void Class3::FileSave() - метод для сохранения списка туристов в файл.
void Class3::FileLoad() - метод для загрузки списка туристов из файла. В нем используется функция strcmp(s,"hotel").
void Class3::info(int passN, Class1 & cl1, Class2 & cl2) – вывод на экран по номеру паспорта информации о купленной путевке: ФИО, название направления, названия оплаченных экскурсий, название отеля, дата вылета, дата прилёта. На вход подается номер паспорта.
Используется функция atoi(s); - преобразует строку s в десятичное целое число.
if( ((y % 4 == 0 && y % 100 != 0) || y % 400 == 0) && m > 2 ) d++; - проверка на високосный год
3.Схема взаимодействия классов
Class1 и Class2 независимы друг от друга, параметры для их методов предоставляются из основной программы.
В заголовочный файл Class3.h включены заголовочные файлы остальных классов, а именно Class1.h и Class2.h, поскольку некоторые методы данного класса используют ссылки на элементы типа Class1 и Class2. В частности, функция Class3::Info(int, Class1 &, Class2 &) использует ссылки для получения доступа к полям соответствующих списков записей.
4. Список функций, не состоящих в классах.
Функции меню:
void GTXY(short x, short y); - перемещение звёздочки-указателя
void ExitMenu(); -меню выхода из программы
void AddElem (Class1 & cl1, Class2 & cl2, Class3 & cl3); - меню добавления элемента
void ShowList(Class1 & cl1, Class2 & cl2, Class3 & cl3); - вывод на экран
void DeleteElem(Class1 & cl1, Class2 & cl2, Class3 & cl3, int id); - удаление элемента
void LoadFile(Class1 & cl1, Class2 & cl2, Class3 & cl3); - меню загрузки списков из файла
void MainMenu(Class1 & cl1, Class2 & cl2, Class3 & cl3) – функция главного меню.
5.Меню