///class CZakazList
/////////////////////////////
//конструктор
CZakazList::CZakazList()
{
this->current = 0;
this->list = new CZakaz[20];
}
//конструктор с параметрами
CZakazList::CZakazList(int count)
{
this->current = 0;
this->list = new CZakaz[count];
}
CZakazList::~CZakazList()
{
}
//добавить заказ в список
void CZakazList::AddZakaz(CTovar tov)
{
CZakaz zak;
//инициализация свойств объекта CTovar вводом с клавиатуры
zak.InitZakazData(tov);
//добавление товара в список
this->list[current] = zak;
this->current++;
}
//вывод списка заказов на экран монитора
void CZakazList::OutZakazList()
{
if ( current > 0 )
for(int i = 0; i < this->current; i++)
{
printf("\n%3i %20s , %6.3f, %20s ", list[i].getNumber(), list[i].getTovarName(), list[i].getCost(),
list[i].getClientName() );
//если клиент в чёрном списке
if ( list[i].getStatus() )
printf(" in black list");
}
else
printf("List is empty!");
}
Файл «Client.h»
class CClient
{
protected:
char client_name[20];//имя клиента
bool is_in_black_list;//true - в чёрном списке, false - нет
public:
CClient();
virtual ~CClient();
//инициализация свойств объекта вводом с клавиатуры
void InitClientData();
//вырнуть имя клиента
char* getClientName();
//вернуть статус
bool getStatus();
};
Файл «Client.cpp»
#include "Client.h"
CClient::CClient()
{
is_in_black_list = false;
}
CClient::~CClient()
{
}
//инициализация свойств объекта вводом с клавиатуры
void CClient::InitClientData()
{
printf("\nInput Client name:");
scanf("%s", client_name);//ввести наименование клиента
is_in_black_list = false;
}
//вырнуть имя клиента
char* CClient::getClientName()
{
return client_name;
}
//вырнуть статус
bool CClient::getStatus()
{
return is_in_black_list;
}
Файл «other_function.cpp»
#include "other_function.h"
//вывод главного меню
void MainMenuOut()
{
printf("\n1. Administrator");
printf("\n2. Client");
printf("\n3. Exit");
printf("\n\nInput punkt menu number:");
}
//вывод меню администратора
void AdminMenuOut()
{
printf("\n\n1.Add tovar");
printf("\n2.Save to file tovar list");
printf("\n3.Load from file tovar list");
printf("\n4.See tovar list");
printf("\n5.See zakaz list");
printf("\n6.To main menu");
printf("\n\nInput punkt menu number:");
}
//вывод меню клиента
void ClientMenuOut()
{
printf("\n1.See tovar list");
printf("\n2.Zakaz");
printf("\n3.To main menu");
printf("\n\nInput punkt menu number:");
}
Файл «main_program.cpp»
#include "Zakaz.h"
#include "other_function.h"
void main()
{
//задаём количество пунктов меню
const MAIN_MENU_PUNCTS_COUNT = 3;
const ADMIN_MENU_PUNCTS_COUNT = 6;
const CLIENT_MENU_PUNCTS_COUNT = 3;
//для хранения номеров пунктов меню
int main_menu_punct_number = 0;
int sum_menu_punct_number = 0;
CTovarList tovar_List;//вызывается конструктор по умолчанию
CZakazList zakaz_List(20);//вызывается конструктор с параметрами
while(main_menu_punct_number != MAIN_MENU_PUNCTS_COUNT)
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.