#include "task.h" #include #include #include #include using namespace std; void dodatyZavdannya(vector& spysok) { Task t; cout << "Введіть назву завдання: "; //cin.ignore(); // очищає буфер від залишків '\n' getline(cin,t.nazva); t.vykonano= false; spysok.push_back(t); } void pokazatySpysok(const vector& spysok){ if(spysok.empty()){ cout<<"Список порожній"<<"\n";} else{cout<<"Список завдань:"<& spysok){ size_t i=0; for(size_t j=0; j>i; if(i>=1 && i <=spysok.size()){ spysok[i-1].vykonano =true; cout<<"Статус змінено "<& spysok) { string name; //cin.ignore(); getline(cin, name); ofstream file(name); if (!file.is_open()) { cout << "невдалося відкрити файл" << endl; return; } for (const Task& t : spysok) { file << t.nazva << "|" << (t.vykonano ? "Виконано" : "Не виконано") << endl; } cout << "завдання збережено в файл: " << name << endl; } void zavantazhytyZFile(std::vector& spysok) { string name; cout << "Ведіть назву файлу який хочете відкрити: "; getline(cin, name); ifstream file(name); if (!file.is_open()) { cout << "не вдалося відкрити файл" << endl; return; } string line; while (getline(file, line)) { size_t delimiterPos = line.find('|'); if (delimiterPos != string::npos) { Task t; t.nazva = line.substr(0, delimiterPos); string status = line.substr(delimiterPos + 1); t.vykonano = (status == "Виконано"); spysok.push_back(t); } } cout << "Завдання успішно завантажено з файлу: " << name << endl; }