#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;
}