Загрузка данных


#include <iostream>
#include <stack>
#include <fstream>
#include <locale>

using namespace std;

int main()
{
    setlocale(LC_ALL, "Russian");

    stack<int> st;

    int com, value;
    int exit = 1;

    while(exit)
    {
        cout << "\n===== МЕНЮ =====\n";
        cout << "1. Добавить элемент\n";
        cout << "2. Удалить элемент\n";
        cout << "3. Показать стек\n";
        cout << "4. Сумма элементов в файле\n";
        cout << "0. Выход\n";
        cout << "Ваш выбор: ";

        cin >> com;

        switch(com)
        {
            case 1:
                cout << "Введите число: ";
                cin >> value;

                st.push(value);

                {
                    ofstream file("data.txt", ios::app);
                    file << value << endl;
                    file.close();
                }

                cout << "Элемент добавлен.\n";
                break;

            case 2:
                if(st.empty())
                {
                    cout << "Стек пуст.\n";
                }
                else
                {
                    cout << "Удален элемент: " << st.top() << endl;
                    st.pop();
                }

                break;

            case 3:
                if(st.empty())
                {
                    cout << "Стек пуст.\n";
                }
                else
                {
                    stack<int> temp = st;

                    cout << "Элементы стека:\n";

                    while(!temp.empty())
                    {
                        cout << temp.top() << endl;
                        temp.pop();
                    }
                }

                break;

            case 4:
                {
                    ifstream file("data.txt");

                    if(!file)
                    {
                        cout << "Не удалось открыть файл.\n";
                        break;
                    }

                    int x, sum = 0;

                    while(file >> x)
                    {
                        sum += x;
                    }

                    file.close();

                    cout << "Сумма элементов = " << sum << endl;
                }

                break;

            case 0:
                exit = 0;
                cout << "Программа завершена.\n";
                break;

            default:
                cout << "Неверный выбор.\n";
        }
    }

    return 0;
}