Advertisement
Guest User

Untitled

a guest
Jun 18th, 2019
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 24.09 KB | None | 0 0
  1. #include <ctime>
  2. #include <algorithm>
  3. #include "windows.h"
  4. #include <string>
  5. #include <vector>
  6. #include <fstream>
  7. #include <iostream>
  8.  
  9. using namespace std;
  10.  
  11.  
  12. class Project {
  13. public:
  14.     Project();
  15.     Project(string Surname, string Initials, unsigned int QAprogram, unsigned int QAnote, unsigned int QAprotection);
  16.     ~Project();
  17.  
  18.     void updateID();
  19.  
  20.     unsigned int getID();
  21.     unsigned int getQAprogramm();
  22.     unsigned int getQAnote();
  23.     unsigned int getQAprotection();
  24.     string getSurname();
  25.  
  26.     void info();
  27.  
  28.     void changeQAprogramm(unsigned int QAprogramm);
  29.     void changeQAnote(unsigned int QAnote);
  30.     void changeQAprotection(unsigned int QAprotection);
  31. public:
  32.     static unsigned int COUNTER;
  33.     static float AVERAGE_MARK;
  34. private:
  35.     string getStrMark(unsigned int Mark);
  36. private:
  37.     unsigned int m_id;
  38.     string m_surname;
  39.     string m_initials;
  40.     unsigned int m_quality_program;
  41.     unsigned int m_quality_note;
  42.     unsigned int m_quality_protection;
  43.     unsigned int m_mark;
  44.  
  45. };
  46.  
  47. unsigned int Project::COUNTER = 0;
  48. float Project::AVERAGE_MARK = 0.f;
  49.  
  50. Project::Project() :
  51.     m_id(0),
  52.     m_surname(""),
  53.     m_initials(""),
  54.     m_quality_program(0),
  55.     m_quality_note(0),
  56.     m_quality_protection(0),
  57.     m_mark(0) {
  58.     COUNTER++;
  59.     m_id = COUNTER;
  60.  
  61.     ifstream fstream;
  62.     fstream.open("Surname.txt");
  63.     int part = rand () % 14;
  64.     for (int i = 0; i < part + 1; i++) {
  65.         getline(fstream, m_surname);
  66.     }
  67.     fstream.close();
  68.  
  69.     m_initials.resize(4);
  70.     string mass = "АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЭЮЯ";
  71.     m_initials += mass[rand() % 29];
  72.     m_initials += '.';
  73.     m_initials += mass[rand() % 29];
  74.     m_initials += '.';
  75.  
  76.     m_quality_program = rand () % 3;  // 0-> bad. 1-> normal. 2-> good.
  77.     m_quality_note = rand () % 3;
  78.     m_quality_protection = rand () % 3;
  79.  
  80.     // 2.2f to int equal 2
  81.     // 2.7f to int equal 2
  82.     // 2.2f + 0.5f to int eqaual 2
  83.     // 2.7f + 0.5f to int equal 3
  84.     // (+ 0.5f) математическое округление
  85.     m_mark = int( ( float(m_quality_program + m_quality_note + m_quality_protection) / 3.f + 0.5f) );
  86.  
  87.     AVERAGE_MARK = (AVERAGE_MARK * (float(COUNTER) - 1.f) + float(m_mark)) / float(COUNTER);
  88. }
  89.  
  90. Project::Project(string Surname, string Initials, unsigned int QAprogram, unsigned int QAnote, unsigned int QAprotection) :
  91.     m_id(0),
  92.     m_surname(Surname),
  93.     m_initials(Initials),
  94.     m_quality_program(QAprogram),
  95.     m_quality_note(QAnote),
  96.     m_quality_protection(QAprotection),
  97.     m_mark(0)
  98.  
  99. {
  100.     COUNTER++;
  101.     m_id = COUNTER;
  102.     m_mark = ( float(m_quality_program + m_quality_note + m_quality_protection) + 0.5f ) / 3.f;
  103.  
  104.     AVERAGE_MARK = (AVERAGE_MARK * (COUNTER - 1) + m_mark) / COUNTER;
  105.  
  106. }
  107.  
  108.  
  109. Project::~Project() {
  110.     Project::COUNTER--;
  111.     Project::AVERAGE_MARK = (AVERAGE_MARK * (COUNTER + 1) - m_mark) / COUNTER;
  112. }
  113.  
  114.  
  115. void Project::updateID() {
  116.     m_id--;
  117. }
  118.  
  119. unsigned int Project::getID() {
  120.     return m_id;
  121. }
  122.  
  123. unsigned int Project::getQAprogramm() {
  124.     return m_quality_program;
  125. }
  126.  
  127. unsigned int Project::getQAnote() {
  128.     return m_quality_note;
  129. }
  130.  
  131. unsigned int Project::getQAprotection() {
  132.     return m_quality_protection;
  133. }
  134.  
  135. string Project::getSurname() {
  136.     return m_surname;
  137. }
  138.  
  139.  
  140. void Project::info() {
  141.     cout << "\n";
  142.     cout << "-------------------------\n";
  143.     cout << "Курсовой проект # " << m_id << "\n";
  144.     cout << "Ученик: " << m_surname << m_initials << "\n";
  145.     cout << "Качество програмы: " << getStrMark(m_quality_program) << "\n";
  146.     cout << "Качество записки: " << getStrMark(m_quality_note) << "\n";
  147.     cout << "Качество защиты: " << getStrMark(m_quality_protection) << "\n";
  148.     cout << "Итого: " << getStrMark(m_mark) << "\n";
  149.     cout << "-------------------------\n";
  150.  
  151. }
  152.  
  153. void Project::changeQAprogramm(unsigned int QAprogramm) {
  154.     m_quality_program = QAprogramm;
  155.     Project::AVERAGE_MARK = (AVERAGE_MARK * (COUNTER + 1) - m_mark) / COUNTER;
  156.     m_mark = ( float(m_quality_program + m_quality_note + m_quality_protection) + 0.5f ) / 3.f;
  157.  
  158.     AVERAGE_MARK = (AVERAGE_MARK * (COUNTER - 1) + m_mark) / COUNTER;
  159.  
  160. }
  161.  
  162. void Project::changeQAnote(unsigned int QAnote) {
  163.     m_quality_note = QAnote;
  164.     Project::AVERAGE_MARK = (AVERAGE_MARK * (COUNTER + 1) - m_mark) / COUNTER;
  165.     m_mark = ( float(m_quality_program + m_quality_note + m_quality_protection) + 0.5f ) / 3.f;
  166.  
  167.     AVERAGE_MARK = (AVERAGE_MARK * (COUNTER - 1) + m_mark) / COUNTER;
  168.  
  169. }
  170.  
  171. void Project::changeQAprotection(unsigned int QAprotection) {
  172.     m_quality_protection = QAprotection;
  173.     Project::AVERAGE_MARK = (AVERAGE_MARK * (COUNTER + 1) - m_mark) / COUNTER;
  174.     m_mark = ( float(m_quality_program + m_quality_note + m_quality_protection) + 0.5f ) / 3.f;
  175.  
  176.     AVERAGE_MARK = (AVERAGE_MARK * (COUNTER - 1) + m_mark) / COUNTER;
  177.  
  178. }
  179.  
  180. string Project::getStrMark(unsigned int Mark) {
  181.     string res;
  182.     switch (Mark) {
  183.     case 0:
  184.         res = "плохо";
  185.         break;
  186.     case 1:
  187.         res = "нормально";
  188.         break;
  189.     case 2:
  190.         res = "хорошо";
  191.         break;
  192.     default:
  193.         break;
  194.  
  195.     }
  196.     return res;
  197. }
  198.  
  199.  
  200.  
  201.  
  202.  
  203.  
  204.  
  205. struct Node {
  206.     Project* project;
  207.     Node* next;
  208. };
  209.  
  210. class List {
  211. public:
  212.     List();
  213.  
  214.     void add(Project * project);
  215.     void remove(unsigned int NO);  // Project with id=NO will be removed
  216.     void print(unsigned int NO);    // From project with id=NO the printing wil start
  217.     Project* getProject(unsigned int NO); // Get Project from list with id=NO
  218.     void print();
  219.  
  220. private:
  221.     Node* begin;
  222.     Node* end;
  223. };
  224.  
  225.  
  226. List::List() :
  227.     begin(nullptr),
  228.     end(nullptr) {
  229. }
  230.  
  231. void List::add(Project * project) {
  232.     Node* temp = new Node();
  233.     temp->next = begin;
  234.     temp->project = project;
  235.  
  236.     if (begin) {
  237.         end->next = temp;
  238.         end = temp;
  239.     } else {
  240.         begin = temp;
  241.         end = temp;
  242.         temp->next = begin;
  243.     }
  244. }
  245.  
  246. void List::remove(unsigned int NO) {
  247.     Node* temp = begin;
  248.     // Searching the next project with id=NO.
  249.  
  250.     while (temp->next->project->getID() != NO) {
  251.         temp = temp->next;
  252.     }
  253.     Node* previousProject = temp;
  254.     Node* projectToDelete = temp->next;
  255.     if (Project::COUNTER > 1) {
  256.         previousProject->next = projectToDelete->next; // Tieing thorough projectToDelete item
  257.         if (projectToDelete == end) { // We dont need to update ids
  258.             end = previousProject;
  259.         } else {
  260.             if (projectToDelete == begin) {
  261.                 begin = projectToDelete->next;
  262.             }
  263.             temp = projectToDelete->next;   // Update the ids from next project to projectToDelete till end inclusively
  264.             do {
  265.                 temp->project->updateID();
  266.                 temp = temp->next;
  267.             } while (temp != begin);
  268.         }
  269.  
  270.     } else {
  271.         begin = nullptr;
  272.         end = nullptr;
  273.     }
  274.  
  275.  
  276.     delete projectToDelete->project;
  277.     delete projectToDelete;
  278. }
  279.  
  280. void List::print(unsigned int NO) {
  281.     Node* temp = begin;
  282.     // Searching the project with id=NO.
  283.  
  284.     while (temp->project->getID() != NO) {
  285.         temp = temp->next;
  286.     }
  287.  
  288.     // Printing till we reach the foundedProject with id=NO
  289.     Node* foundedProject = temp;
  290.     do {
  291.         temp->project->info();
  292.         temp = temp->next;
  293.     }   while (temp != foundedProject);
  294.  
  295. }
  296.  
  297. Project * List::getProject(unsigned int NO) {
  298.     Node* temp = begin;
  299.     // Searching the project with id=NO.
  300.  
  301.     while (temp->project->getID() != NO) {
  302.         temp = temp->next;
  303.     }
  304.     return temp->project;
  305. }
  306.  
  307. void List::print() {
  308.     Node* temp = begin;
  309.     if (temp) {
  310.         do {
  311.             temp->project->info();
  312.             temp = temp->next;
  313.         }   while (temp != begin);
  314.     } else {
  315.         cout << "List is empty!\n";
  316.     }
  317. }
  318.  
  319.  
  320.  
  321.  
  322.  
  323.  
  324.  
  325.  
  326. void mainMenu() {
  327.     cout << "==========|MENU|==========\n";
  328.     cout << "(1) Добавить проект\n";
  329.     cout << "(2) Добавить случайный проект\n";
  330.     cout << "(3) Удалить проект\n";
  331.     cout << "(4) Посмотреть проекты...\n\n";
  332.     cout << "(5) Изменить данные о проекте...\n";
  333.     cout << "(6) Посмотреть количество всех проектов\n";
  334.     cout << "(7) Посмотреть среднюю оценку\n\n";
  335.     cout << "(9) Узнать информацию об авторе\n";
  336.     cout << "(0) Выход\n\n";
  337.     cout << "==========================\n";
  338.     cout << "> ";
  339.  
  340. }
  341. void showProjectsMenu() {
  342.     cout << "==========|MENU|==========\n";
  343.     cout << "====Просмотр проектов=====\n";
  344.     cout << "(1) Посмотреть весь список\n";
  345.     cout << "(2) Посмотреть проекты по кругу начиная с...\n";
  346.     cout << "(3) Посмотреть проект под номером...\n";
  347.     cout << "(4) Посмотреть проекты по оценке за качество программы\n";
  348.     cout << "(5) Посмотреть проекты по оценке за качество записки\n";
  349.     cout << "(6) Посмотреть проекты по оценке за качество защиты\n";
  350.     cout << "(7) Посмотреть проекты по алфавиту студента\n";
  351.     cout << "(8) Назад\n";
  352.     cout << "==========================\n";
  353.     cout << "> ";
  354.  
  355. }
  356. void showChangeProjectMenu(Project* project) {
  357.     cout << "==========|MENU|==========\n";
  358.     cout << "===|   Редактирование проекта ";
  359.     project->info();
  360.     cout << "(1) Изменить оценку за качество программы\n";
  361.     cout << "(2) Изменить оценку за качество записки\n";
  362.     cout << "(3) Изменить оценку за качество защиты\n\n\n\n";
  363.     cout << "(4) Назад\n";
  364.     cout << "==========================\n";
  365.     cout << "> ";
  366.  
  367. }
  368.  
  369. void info() {
  370.     cout << "Работу выполнил:\n";
  371.     cout << "[XXX]\n";
  372.     cout << "Группа: ОПК-216\n";
  373.     cout<<"Преподавватель:\n";
  374.     cout << "Коломиец Павел Юрьевич\n";
  375.  
  376. }
  377. bool sortByQAprogramm(Project * A,Project * B) {
  378.     return (A->getQAprogramm() > B->getQAprogramm());
  379. }
  380. bool sortByQAnote(Project * A,Project * B) {
  381.     return (A->getQAnote() > B->getQAnote());
  382. }
  383. bool sortByQAprotection(Project * A,Project * B) {
  384.     return (A->getQAprotection() > B->getQAprotection());
  385. }
  386. bool sortBySurname(Project * A,Project * B) {
  387.     return (A->getSurname() < B->getSurname());
  388. }
  389.  
  390. int startGate();
  391.  
  392. int main() {
  393.     setlocale(LC_ALL, "rus");
  394.     srand(time(0));
  395.  
  396.  
  397.     startGate();
  398. }
  399.  
  400. int startGate() {
  401.     cout << "Добро пожаловать. Введите количество курсовых проектов (до 20).\n";
  402.     int number_of_projects = 0;
  403.     while (number_of_projects < 1 || number_of_projects > 20) {
  404.         cout << "Количество: ";
  405.         cin >> number_of_projects;
  406.         if (number_of_projects < 0) {
  407.             cout << "\nКак количество может быть отрицательный ?! (Вводите только натуральные числа)\n";
  408.         } else if (number_of_projects > 20) {
  409.             cout << "\n(Вводите числа меньше или равные 20)\n";
  410.         } else if (number_of_projects == 0) {
  411.             cout << "\nНу хотя бы один!\n";
  412.         } else {
  413.             cout << "\nЗамечательно!\n";
  414.         }
  415.     }
  416.     List list;
  417.     for (int i = 0; i < number_of_projects; i++) {
  418.         list.add(new Project);
  419.     }
  420.     while (true) {
  421.         system("cls");
  422.         mainMenu();
  423.         int choice = 0;
  424.         int second_choice = 0;
  425.         int num = 0, data1 = 0;
  426.         unsigned int data = 0;
  427.         string name, namecopy;
  428.         string name1, namecopy1;
  429.         cin >> choice;
  430.  
  431.         switch (choice) {
  432.         case 1: {
  433.             system("cls");
  434.             cout << "Введите фамилию: \n> ";
  435.             cin >> name;
  436.             getline(cin, namecopy);
  437.             system("cls");
  438.             cout << "Введите инициалы в следующем формате [Х.Х.] : \n> ";
  439.             cin >> name1;
  440.             getline(cin, namecopy1);
  441.             system("cls");
  442.             cout << "Введите оценку за качество программы: \n> ";
  443.             do {
  444.                 cin >> num;
  445.                 if (num < 0 || num > 2) {
  446.                     cout << "Вне возможных рамок(от 0 до 2). Попробуйте ещё раз ! \n> ";
  447.                 }
  448.             } while (num < 0 || num > 2);
  449.             system("cls");
  450.             cout << "Введите оценку за качество записки: \n> ";
  451.             do {
  452.                 cin >> data;
  453.                 if (data < 0 || data > 2) {
  454.                     cout << "Вне возможных рамок(от 0 до 2). Попробуйте ещё раз ! \n> ";
  455.                 }
  456.             } while (data < 0 || data > 2);
  457.             system("cls");
  458.             cout << "Введите оценку за качество защиты: \n> ";
  459.             do {
  460.                 cin >> data1;
  461.                 if (data1 < 0 || data1 > 2) {
  462.                     cout << "Вне возможных рамок(от 0 до 2). Попробуйте ещё раз ! \n> ";
  463.                 }
  464.             } while (data1 < 0 || data1 > 2);
  465.             system("cls");
  466.  
  467.             list.add(new Project(name + namecopy, name1 + namecopy1, num, data, data1));
  468.             system("cls");
  469.             mainMenu();
  470.             cout << "\n\n\n\n\n\n\n\n\n\n\n\n\n\n> ";
  471.             cout << "Новый курсовой проект добавлен !";
  472.             Sleep(1000);
  473.         }
  474.         break;
  475.         case 2: {
  476.             list.add(new Project);
  477.             system("cls");
  478.             mainMenu();
  479.             cout << "\n\n\n\n\n\n\n\n\n\n\n\n\n\n> ";
  480.             cout << "Новый курсовой проект добавлен !";
  481.             Sleep(1000);
  482.         }
  483.         break;
  484.         case 3: {
  485.             while (num < 1 || num > Project::COUNTER) {
  486.                 system("cls");
  487.                 mainMenu();
  488.                 cout << "Проект под каким номером вы хотите удалить ?\n> ";
  489.  
  490.                 cin >> num;
  491.                 if (num < 1 || num > Project::COUNTER) {
  492.                     cout << "Проект с номером " << num << " не существет. Попробуйте ещё раз.\n>";
  493.                     Sleep(1000);
  494.                 }
  495.             }
  496.             list.remove(num);
  497.             cout << "\n\n\n\n\n\n\n\n\n\n\n> ";
  498.             cout << "Проект под номером " << num << " удален.\n";
  499.             Sleep(1000);
  500.         }
  501.         break;
  502.         case 4: {
  503.  
  504.             while (second_choice != 7) {
  505.                 system("cls");
  506.                 showProjectsMenu();
  507.                 cin >> second_choice;
  508.                 switch (second_choice) {
  509.                 case 1: {
  510.                     system("cls");
  511.                     list.print();
  512.                     system("pause");
  513.                 }
  514.                 break;
  515.                 case 2: {
  516.                     do {
  517.                         system("cls");
  518.                         cout << "С какого проекта начнём ? (Введите номер проекта): \n> ";
  519.                         cin >> num;
  520.                         if (num < 1 || num > Project::COUNTER) {
  521.                             cout << "Проекта с номером " << num << " не существует\n";
  522.                             Sleep(1000);
  523.                         }
  524.                     } while (num < 1 || num > Project::COUNTER);
  525.                     system("cls");
  526.                     list.print(num);
  527.                     system("pause");
  528.                 }
  529.                 break;
  530.                 case 3: {
  531.                     do {
  532.                         system("cls");
  533.                         cout << "Какой проект посмотрим? (Введите номер проекта): \n> ";
  534.                         cin >> num;
  535.                         if (num < 1 || num > Project::COUNTER) {
  536.                             cout << "Проект с номером " << num << " не существует\n";
  537.                             Sleep(1000);
  538.                         }
  539.                     } while (num < 1 || num > Project::COUNTER);
  540.                     system("cls");
  541.                     list.getProject(num)->info();
  542.                     system("pause");
  543.                 }
  544.                 break;
  545.                 case 4: {
  546.                     vector<Project *> out;
  547.                     for (int i = 0; i < Project::COUNTER; i++) {
  548.                         out.push_back(list.getProject(i + 1));
  549.                     }
  550.                     sort(out.begin(), out.end(), sortByQAprogramm);
  551.                     system("cls");
  552.                     for (int i = 0; i < Project::COUNTER; i++) {
  553.                         out[i]->info();
  554.                     }
  555.                     system("pause");
  556.                 }
  557.                 break;
  558.                 case 5: {
  559.                     vector<Project *> out;
  560.                     for (int i = 0; i < Project::COUNTER; i++) {
  561.                         out.push_back(list.getProject(i + 1));
  562.                     }
  563.                     sort(out.begin(), out.end(), sortByQAnote);
  564.                     system("cls");
  565.                     for (int i = 0; i < Project::COUNTER; i++) {
  566.                         out[i]->info();
  567.                     }
  568.                     system("pause");
  569.                 }
  570.                 break;
  571.                 case 6: {
  572.                     vector<Project *> out;
  573.                     for (int i = 0; i < Project::COUNTER; i++) {
  574.                         out.push_back(list.getProject(i + 1));
  575.                     }
  576.                     sort(out.begin(), out.end(), sortByQAprotection);
  577.                     system("cls");
  578.                     for (int i = 0; i < Project::COUNTER; i++) {
  579.                         out[i]->info();
  580.                     }
  581.                     system("pause");
  582.                 }
  583.                 break;
  584.                 case 7: {
  585.                     vector<Project *> out;
  586.                     for (int i = 0; i < Project::COUNTER; i++) {
  587.                         out.push_back(list.getProject(i + 1));
  588.                     }
  589.                     sort(out.begin(), out.end(), sortBySurname);
  590.                     system("cls");
  591.                     for (int i = 0; i < Project::COUNTER; i++) {
  592.                         out[i]->info();
  593.                     }
  594.                     system("pause");
  595.                 }
  596.                 break;
  597.                 default:
  598.                     break;
  599.                 }
  600.             }
  601.         }
  602.         break;
  603.         case 5: {
  604.             while (num < 1 || num > Project::COUNTER) {
  605.                 system("cls");
  606.                 mainMenu();
  607.                 cout << "Проект под каким номером вы хотите редактировать ?\n> ";
  608.  
  609.                 cin >> num;
  610.                 if (num < 1 || num > Project::COUNTER) {
  611.                     cout << "Проект с номером " << num << " не существет. Попробуйте ещё раз.\n>";
  612.                     Sleep(1000);
  613.                 } else {
  614.                     while (second_choice != 4) {
  615.                         system("cls");
  616.                         showChangeProjectMenu(list.getProject(num));
  617.                         cin >> second_choice;
  618.                         switch (second_choice) {
  619.                         case 1: {
  620.                             cout << "Введите оценку за качество программы: \n> ";
  621.                             do {
  622.                                 cin >> data;
  623.                                 if (data < 0 || data > 2) {
  624.                                     cout << "Вне возможных рамок. Попробуйте ещё раз ! \n> ";
  625.                                 }
  626.                             } while (data < 0 || data > 2);
  627.  
  628.                             list.getProject(num)->changeQAprogramm(data);
  629.                             system("cls");
  630.                             showChangeProjectMenu(list.getProject(num));
  631.                             cout << "\n\n\n\n\n\n\n\n\n\n\n> ";
  632.                             cout << "Оценка за качество программы изменена!";
  633.                             Sleep(1000);
  634.                         }
  635.                         break;
  636.                         case 2: {
  637.                             cout << "Введите оценку за качество записки: \n> ";
  638.                             do {
  639.                                 cin >> data1;
  640.                                 if (data1 < 0 || data1 > 2) {
  641.                                     cout << "Вне возможных рамок. Попробуйте ещё раз ! \n> ";
  642.                                 }
  643.                             } while (data1 < 0 || data1 > 2);
  644.  
  645.                             list.getProject(num)->changeQAnote(data1);
  646.                             system("cls");
  647.                             showChangeProjectMenu(list.getProject(num));
  648.                             cout << "\n\n\n\n\n\n\n\n\n\n\n> ";
  649.                             cout << "Оценка за качество программы изменена!";
  650.                             Sleep(1000);
  651.                         }
  652.                         break;
  653.                         case 3: {
  654.                             cout << "Введите оценку за качество защиты: \n> ";
  655.                             do {
  656.                                 cin >> data;
  657.                                 if (data < 0 || data > 2) {
  658.                                     cout << "Вне возможных рамок. Попробуйте ещё раз ! \n> ";
  659.                                 }
  660.                             } while (data < 0 || data > 2);
  661.  
  662.                             list.getProject(num)->changeQAprotection(data);
  663.                             system("cls");
  664.                             showChangeProjectMenu(list.getProject(num));
  665.                             cout << "\n\n\n\n\n\n\n\n\n\n\n> ";
  666.                             cout << "Оценка за качество защиты изменена!";
  667.                             Sleep(1000);
  668.                         }
  669.                         break;
  670.                         case 4: {
  671.  
  672.                         }
  673.                         break;
  674.                         default: {
  675.  
  676.                         }
  677.                         break;
  678.                         }
  679.                     }
  680.  
  681.                 }
  682.  
  683.             }
  684.         }
  685.         break;
  686.         case 6: {
  687.             cout << Project::COUNTER << "\n";
  688.             system("pause");
  689.         }
  690.         break;
  691.         case 7: {
  692.             cout << Project::AVERAGE_MARK << "\n";
  693.             switch ( int( Project::AVERAGE_MARK + 0.5f ) ) {
  694.             case 0:
  695.                 cout << "Плохо.\n";
  696.                 break;
  697.             case 1:
  698.                 cout << "Нормально.\n";
  699.                 break;
  700.             case 2:
  701.                 cout << "Хорошо.\n";
  702.                 break;
  703.             default:
  704.                 break;
  705.  
  706.             }
  707.             system("pause");
  708.         }
  709.         break;
  710.         case 9: {
  711.             system("cls");
  712.             info();
  713.             system("pause");
  714.         }
  715.         break;
  716.         case 0: {
  717.             system("cls");
  718.             mainMenu();
  719.             cout << "\n\n\n\n\n\n\n\n\n\n\n\n\n\n> ";
  720.             cout << "Пока-пока ! ";
  721.             Sleep(1000);
  722.             return 0;
  723.         }
  724.         break;
  725.         default:
  726.             break;
  727.         }
  728.     }
  729. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement