Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "stdafx.h"
- #include <iostream>
- #include <string>
- using namespace System;
- using namespace std;
- class workspace
- {
- string name;
- string header;
- int buildnum;
- public:
- workspace();
- workspace(workspace &Obj);
- workspace(string i_name, string i_header, int i_buildnum);
- ~workspace();
- void SetName();
- void SetHeader();
- void SetBuildNum();
- workspace SaveInfo();
- void InputAllInfo();
- void PrintAllInfo();
- private:
- };
- void ClearConsole();
- void CreateAction(int size);
- int Action_InputType(int info_edit);
- int GetPickNumber(int size);
- workspace *wspace;
- void workspace::SetName()
- {
- cout << "Print name = ";
- cin >> name;
- }
- void workspace::SetHeader()
- {
- cout << "Print header = ";
- cin >> header;
- }
- void workspace::SetBuildNum()
- {
- cout << "Print buildnum = ";
- cin >> buildnum;
- }
- void workspace::InputAllInfo()
- {
- cout << "Print name = ";
- cin >> name;
- cout << "Print header = ";
- cin >> header;
- cout << "Print buildnum = ";
- cin >> buildnum;
- }
- workspace workspace::SaveInfo()
- {
- workspace info;
- info.name = name;
- info.header = header;
- info.buildnum = buildnum;
- return info;
- }
- void workspace::PrintAllInfo()
- {
- cout << "Name = " << name << endl;
- cout << "Header = " << header << endl;
- cout << "Buildnum = " << buildnum << endl;
- cout << "\n";
- }
- workspace::workspace(workspace &Obj)
- {
- workspace pointer;
- pointer.name = Obj.name;
- pointer.header = Obj.header;
- pointer.buildnum = Obj.buildnum;
- cout << "workspace(workspace &Obj)\n";
- }
- workspace::workspace()
- {
- name.clear();
- header.clear();
- buildnum = 0;
- cout << "workspace()\n";
- }
- workspace::workspace(string i_name, string i_header, int i_buildnum)
- {
- name = i_name;
- header = i_header;
- buildnum = i_buildnum;
- cout << "workspace(string i_name, string i_header, int i_buildnum)\n";
- }
- workspace::~workspace()
- {
- cout << "\n[!] Destructor working [!]\n" << endl;
- }
- int main()
- {
- setlocale(LC_CTYPE, "ukr");
- int size;
- cout << "Print count workspace = ";
- cin >> size;
- wspace = new workspace[size];
- for (int i = 0; i < size; i++)
- {
- cout << "Цех - " << i + 1 << "\n";
- wspace[i].InputAllInfo();
- cout << "\n";
- }
- ClearConsole();
- cout << "Даннi були введенi. Виберiть наступну дiю.\n";
- CreateAction(size);
- return 0;
- }
- void CreateAction(int size)
- {
- setlocale(LC_CTYPE, "ukr");
- cout << "1) Переглянути iнформацiю\n";
- cout << "2) Змiнити iнформацiю\n";
- int type;
- cout << "\nВвiд номеру: ";
- cin >> type;
- while (1)
- {
- if (type != 1 && type != 2)
- {
- cout << "Ви допустили помилку, введiть номер ще раз.";
- cout << "\nВвiд номеру: ";
- cin >> type;
- continue;
- }
- break;
- }
- int result = Action_InputType(type);
- int tmpnum;
- switch (type)
- {
- case 1:
- {
- switch (result)
- {
- case 1:
- {
- for (int i = 0; i < size; i++)
- {
- cout << "Номер цеху - " << i + 1 << "\n";
- wspace[i].PrintAllInfo();
- }
- break;
- }
- case 2:
- {
- int num = GetPickNumber(size);
- cout << "Номер цеху - " << num + 1 << "\n";
- wspace[num].PrintAllInfo();
- break;
- }
- }
- cout << "\nВведiть '0' щоб повернутись назад.\n";
- cin >> tmpnum;
- while (1)
- {
- if (tmpnum != 0)
- {
- cin >> tmpnum;
- continue;
- }
- break;
- }
- ClearConsole();
- CreateAction(size);
- break;
- }
- case 2:
- {
- switch (type)
- {
- case 1:
- {
- for (int i = 0; i < size; i++)
- {
- cout << "Номер цеху - " << i + 1 << "\n";
- wspace[i].InputAllInfo();
- cout << "\n";
- }
- break;
- }
- case 2:
- {
- int num = GetPickNumber(size);
- int req;
- workspace tmp_info;
- cout << "Номер цеху - " << num + 1 << "\n";
- wspace[num].InputAllInfo();
- cout << "\n";
- tmp_info = wspace[num].SaveInfo();
- cout << "\nДаннi змiненi. Введіть '1' щоб пiдтвердити, '0' - повернути назад\n";
- cin >> req;
- while (1)
- {
- if (req != 0 && req != 1)
- {
- cout << "\nДопущена помилка. Введіть '1' щоб пiдтвердити, '0' - повернути назад\n";
- cin >> req;
- continue;
- }
- break;
- }
- if (!req)
- {
- cout << "Даннi повернуто назад.\n";
- wspace[num] = tmp_info;
- }
- break;
- }
- }
- cout << "\nВведiть '0' щоб повернутись назад.\n";
- cin >> tmpnum;
- while (1)
- {
- if (tmpnum != 0)
- {
- cin >> tmpnum;
- continue;
- }
- break;
- }
- ClearConsole();
- CreateAction(size);
- break;
- }
- }
- }
- // 1 - всю інформацію, 2 - за номером
- int Action_InputType(int info_edit)
- {
- setlocale(LC_CTYPE, "ukr");
- ClearConsole();
- string msg_text[2] = { "Перегляд iнформацii\n", "Змiна iнформацii\n" };
- int type;
- cout << msg_text[info_edit - 1];
- cout << "1) Вся iнформацiя\n";
- cout << "2) iнформацiя по номеру\n";
- cout << "\nВвiд номеру: ";
- cin >> type;
- while (1)
- {
- if (type != 1 && type != 2)
- {
- cout << "Ви допустили помилку, введiть номер ще раз.";
- cout << "\nВвiд номеру: ";
- cin >> type;
- continue;
- }
- break;
- }
- return type;
- }
- int GetPickNumber(int size)
- {
- setlocale(LC_CTYPE, "ukr");
- int num;
- cout << "Введiть номер цеху. Значення має бути вiд 1 до " << size << ":\n";
- cin >> num;
- while (1)
- {
- if (num < 1 || num > size)
- {
- cout << "Введiть номер цеху. Значення має бути вiд 1 до " << size << ":\n";
- cin >> num;
- continue;
- }
- break;
- }
- return num - 1;
- }
- void ClearConsole()
- {
- for (int i = 0; i < 50; i++)
- cout << "\n";
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement