- •Ф едеральное агенство воздушного транспорта (росавиация)
- •Аннотация
- •Оглавление
- •Цель курсовой работы
- •Задание на выполнение курсовой работы
- •Назначение и возможности разработанной системы
- •Программа системы
- •Структура программы
- •Схемы алгоритмов функций
- •Руководство по использованию программы
- •Листинг программ Файл Header.H
- •Файл Header.Cpp
- •Файл menu.Cpp
- •Исходные файлы с данными
- •Результат работы программы
Руководство по использованию программы
Для запуска программы необходимо поставить Microsoft Visual Studio. Создать новый проект, разделенный на три файла: два с разрешением .cpp и один с разрешением .h.
Для корректной работы программы необходимо поместить на диск C следующие текстовые файлы: employees.txt, adding.txt, modify.txt и delete.txt (содержание этих файлов см. в Приложении 2).
Для того, чтоб подготовить исходные файлы и файлы для тестирования вариантов обработки данных необходимо создать текстовый документ в Блокноте и вбить туда сотрудников определенным образом: фамилия, отдел, должность, год рождения, оклад (или его изменение) и порядковый номер.
Для использования меню необходимо запустить программу и выбрать одну из предложенных опций. Если введенный вариант не удовлетворяет заданным в меню условиям, то программа попросит пользователя повторить ввод. После того, как пользователь введет вариант обработки, ему на экране будет выведено сообщение о том, что обработка была успешно завершена. Посмотреть результат обработки пользователь сможет посредствам вывода на экран содержимого всех бинарных файлов или после завершения программы посмотреть исходный текстовый документ, который изменился (результаты работы программы см. в Приложении 3).
ПРИЛОЖЕНИЕ 1
Листинг программ Файл Header.H
#pragma once
#include <iostream>
#include <string>
#include <fstream>
#include <map>
#include <vector>
#include <typeinfo>
#include <algorithm>
using namespace std;
class Database {
public:
map <string, string> a;
map <string, int> b;
ofstream fout;
ifstream in;
struct Employees {
string name;
string department;
string position;
int year_of_birth;
int salary;
int employee_number;
};
vector<Employees> db;
int size;
void add(string dep) {
if (a.find(dep) != a.end()) {}
else a[dep] = dep + ".bin";
}
void add2(string dep) {
if (b.find(dep) != b.end()) {
b[dep]++;
}
else b[dep] = 1;
}
Database(string s) {
char memory[1000];
in.open(s);
int count = 0;
while (!in.eof()) {
count++;
in.getline(memory, 1000);
}
if (!in) {
cout << "Error. Can not open the file with data" << endl;
system("pause");
return;
}
in.close();
size = count;
in.open(s);
for (int i = 0; i < count; ++i) {
Employees f;
in >> f.name;
in >> f.department;
add(f.department);
in >> f.position;
in >> f.year_of_birth;
in >> f.salary;
in >> f.employee_number;
db.push_back(f);
}
in.close();
}
void addEmployee();
void showEmployees();
void addEmployeeFromFile();
void addEmployeeFromKeybord();
void modifySalaryFromKeybord();
void modifySalaryFromFile();
void Search();
void deletingFromKeybord();
void deletingFromFile();
void Sort();
};
