Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <fstream>
- #include <string>
- #include <Windows.h>
- #include <cstdlib>
- #define N 5 //объявление количества магазинов
- #define M 10 //объявление количества товаров
- using namespace std;
- struct tovar // товары
- {
- string tovar; //наименование товара
- int kolvo; //количество товара
- int cost; //стоимость товара
- } TV[M];
- struct shop //магазины
- {
- int shop; //номер магазина
- string surname; //фамилия
- tovar volume;
- } CMP[N];
- int main()
- {
- int i = 0, menu = 0;
- setlocale(LC_ALL, "Russian"); //перевод на русский язык
- SetConsoleCP(1251);
- SetConsoleOutputCP(1251);
- system("cls");
- cout << "Меню выбора: \nВведите 1 для добавления информации. \nВведите 2 для просмотра. \nВведите 3 для получения списка суммы \nВведите 4 для завершения работы программы.";
- cout << "\nВвод номера пункта меню: ";
- cin >> menu;
- do
- {
- switch (menu)
- {
- case 1: //добавление магазина
- {
- system("cls");
- ofstream FILE("zadanie.txt", ios_base::app); //открытие файла
- int i = 0, position = 0;
- do
- {
- string surname = " ", tovar = " ";
- FILE << endl;
- cout << "\t\tДобавление нового магазина:\n";
- cout << "Номер магазина: ";
- cin >> CMP[i].shop;
- cout << "Фамилия: ";
- cin.ignore(1, '\n'); //Необходимая очистка буфера ввода для корректности отображения введенных строк
- getline(cin, surname); //ввод строки фамилии
- for (int i = 0; i < M; i++)
- {
- cout << "Введите наименование товара: ";
- getline(cin, TV[i].tovar);
- cout << endl;
- cout << "Введите количество товара:";
- cin >> TV[i].kolvo;
- cout << endl;
- cout << "Цена товара: ";
- cin >> TV[i].cost;
- cout << endl;
- }
- FILE << " " << CMP[i].shop << "\t\t" << CMP[i].surname << " ";
- FILE << TV[i].tovar << " " << "\t ";
- FILE << TV[i].kolvo << "\t\t " << TV[i].cost;
- cout << "\nДобавить ещё один магазин?\nВведите 1, если хотите продолжить, 4, если хотите закончить.\nВвод: ";
- do
- {
- cin >> position;
- if (position != 1 && position != 4)
- {
- cout << "\nТакого варианта не существует.\nВведите номер корректно: ";
- }
- } while (position != 1 && position != 4);
- system("cls");
- i++;
- } while (position != 4);
- FILE.close(); //закрытие файла
- system("cls");
- cout << "\nВвод данных был выполнен успешно.\n\n";
- system("pause");
- break;
- }
- case 3: //считывание файла и работа с его данными
- {
- int sum = 0;
- int j = 0;
- ifstream FILE("zadanie.txt", ios::in); //открытие файла
- if (!FILE.is_open())
- {
- cout << "\nФайл не может быть открыт!\nПроверьте наличие файла \"zadanie.txt\" и запустите программу заново.\n\n";
- system("pause");
- exit(0);
- }
- cout << "\tCписок суммы: " << endl;
- for (int i = 0; !FILE.eof(); i++)
- {
- FILE.ignore(255, '\n');
- FILE >> CMP[i].shop;
- FILE >> CMP[i].surname;
- for (int j = 0; j < M; j++)
- FILE >> TV[i][j].tovar;
- FILE >> TV[i][j].kolvo;
- FILE >> TV[i][j].cost;
- sum += TV[j].kolvo * TV[j].cost;
- cout << "\tНомер магазина: " << CMP[i].shop << endl << "\tТовара на сумму: " << sum << endl;
- }
- }
- case 4: //выход из программы
- {
- exit(0);
- break;
- }
- }
- } while (menu != 4);
- }
Advertisement
Add Comment
Please, Sign In to add comment