Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <iomanip>
- #include <string>
- #include <fstream>
- #include "price.h"
- using namespace std;
- Price::Price() {
- /*m_id = 0;
- m_nameproduct = 'null';
- m_shopname = 'null';
- m_cost = 0;
- m_amount = 0;*/
- cout << "Введите уникальный номер товара : "; cin >> m_id;
- cout << "Введите название товара : "; cin.ignore(); cin >> m_nameproduct;
- cout << "Введите название магазина : "; cin.ignore(); cin >> m_shopname;
- cout << "Введите стоймость в рублях : "; cin >> m_cost;
- cout << "Введите кол-во товара на складе : "; cin.ignore(); cin >> m_amount;
- cout << endl;
- }
- Price::Price(int id, string nameproduct, string shopname, float cost, int amount) {
- m_id = id;
- m_nameproduct = nameproduct;
- m_shopname = shopname;
- m_cost = cost;
- m_amount = amount;
- }
- //void Price::Print() {
- // cout << m_id << " " << m_nameproduct << " " << m_shopname << " " << m_cost << " " << m_amount << endl;
- //}
- void Price::Main_menu(Price *s, int n) { //ГЛАВНОЕ МЕНЮ
- int g;
- do {
- system("cls");
- cout << " ГЛАВНОЕ МЕНЮ " << endl;
- cout << "1)Таблица с товарами\n2)Упорядочить записи в порядке возрастания стоймости товара\n3)Информация о товаре по названию магазина\n4)Поиск по индификатору\n5)Вывод товаров, кол-во которых на складе меньше 5\n6)Редактировать информацию о товаре\n7)Кот\n8)Выход" << endl;
- cout << endl <<
- "Выберите действие " << endl;
- cin >> g;
- switch (g)
- {
- case 1: Price::Table(s, n); break;
- case 2: Price::Sort(s, n); break;
- case 3: Price::Shop(s, n); break;
- case 4: Price::FindId(s, n); break;
- case 5: Price::Five(s, n); break;
- case 6: Price::Edit(s, n); break;
- case 7: Cat(); break;
- }
- } while (g != 8);
- system("cls");
- }
- string Price::Print() { //Вывод одной структуры
- string out;
- out = "Уникальный номер товара : " + to_string(m_id) + "\nНазвание товара : " + m_nameproduct + "\nНазвание магазина : " + m_shopname + "\nСтоймость в рублях : " + to_string(m_cost) + "\nКол-во товара на складе : " + to_string(m_amount) + "\n";
- return out;
- }
- void Price::Sort(Price *s, int n) { //!!порядочить записи в массиве в порядке возрастания стоимости товара;{
- for (int i = 0; i < n - 1; ++i) {
- for (int j = 0; j < n - 1; ++j) {
- if (s[j + 1].m_cost < s[j].m_cost) {
- Price tmp = s[j + 1];
- s[j + 1] = s[j];
- s[j] = tmp;
- }
- }
- }
- cout << "Записи упорядочены" << endl;
- system("pause");
- }
- void Price::Table(Price *s, int n) { //!!вывод информации обо всех товарах в виде таблицы;
- system("cls");
- cout << "------------------------------------------------------------------------------------------------------" << endl;
- cout << '|' << "Индификатор" << setw(10) << '|' << setw(10) << "Название" << setw(10) << '|' << setw(10) << "Магазин" << setw(10) << '|' << setw(10) << "Стоимость" << setw(10) << '|' << setw(10) << "Кол-во" << setw(10) << '|' << endl;
- cout << "------------------------------------------------------------------------------------------------------" << endl;
- for (int g = 0; g < n; g++) {
- cout << '|' << setw(10) << s[g].m_id << setw(11) << '|' << setw(10) << s[g].m_nameproduct << setw(10) << '|' << setw(10) << s[g].m_shopname << setw(10) << '|' << setw(10) << s[g].m_cost << setw(10) << '|' << setw(10) << s[g].m_amount << setw(10) << '|' << endl;
- cout << "------------------------------------------------------------------------------------------------------" << endl;
- }
- system("pause");
- }
- void Price::Shop(Price *s, int n) { //!!вывод информации обо всех товарах на экран, группируя их по названиям магазинов;
- system("cls");
- string shop;
- bool chek = false;
- cout << "Введите название нужного магазина " << endl;
- cin >> shop;
- cout << endl;
- for (int i = 0; i < n; i++) {
- if (s[i].m_shopname == shop) {
- cout << s[i].Print();
- chek = true;
- }
- }
- if (chek != true) cout << "Такой магазин не найден\nВозращение в главное меню" << endl;
- system("pause");
- }
- void Price::FindId(Price *s, int n) { //!!поиск информации о товаре по его идентификатору;
- system("cls");
- int g;
- bool chek = false;
- cout << "Введите уникальный номер нужного товара" << endl;
- cin >> g;
- for (int i = 0; i < n; i++) {
- if (s[i].m_id == g) {
- cout << s[i].Print();
- chek = true;
- }
- }
- if (chek != true) cout << "Такой уникальный номер не найден\nВозращение в главное меню" << endl;
- system("pause");
- }
- void Price::Five(Price *s, int n) { //!!вывод на экран информации о товарах, количество которых на складе меньше 5;
- system("cls");
- for (int i = 0; i < n; i++) {
- if (s[i].m_amount <= 5) {
- cout << s[i].Print();
- }
- }
- system("pause");
- }
- void Price::Edit(Price *s, int n) { //!!редактирование информации о товаре (поиск по идентификатору).
- system("cls");
- int id, ed;
- bool chek = false;
- cout << "Введите уникальный номер товара который хотите редактировать : " << endl;
- cin >> id;
- for (int i = 0; i < n; i++) {
- if (id == s[i].m_id) {
- chek = true;
- do {
- system("cls");
- cout << s[i].Print();
- cout << endl << "Какой параметр хотите редактировать ?\n1) Уникальный номер\n2) Название товара\n3) Название магазина\n4) Цена в рублях\n5) Кол-во товара на складе\n";
- cin >> ed;
- } while (ed <= 0 || ed > 5);
- switch (ed)
- {
- case 1: cout << "Введите новый уникальный номер : " << endl; cin >> s[i].m_id; break;
- case 2: cout << "Введите новое название товара : " << endl; cin.ignore(); cin >> s[i].m_nameproduct; break;
- case 3: cout << "Введите новое название магазина : " << endl; cin.ignore(); cin >> s[i].m_shopname; break;
- case 4: cout << "Введите новую цену в рублях : " << endl; cin >> s[i].m_cost; break;
- case 5: cout << "Введите новое кол-во товара на складе : " << endl; cin >> s[i].m_amount; break;
- }
- }
- }
- if (chek != true) cout << "Такой уникальный номер не найден\nВозращение в главное меню" << endl;
- system("pause");
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement