#include//Ввод вывод #include//Работа с файлами #include//Работа со строками #include//Работа с динамическими массивами #include//Работа с алгоритмами #include//Работа с временем #include//Работа с многопоточностью std::vectorusernames;// Храним имена пользователей std::vectorpasswords;// Храним пароли void addUserFromFile()// Объявляем функцию добавления пользователей в файл { std::ifstream file("users.txt");// Создаём объект file типа std::ifstream if(!file){//Если файл не открылся std::cout<<"Файл не найден"<> username >> password){//Цикл читает файл до тех пор пока есть сходства usernames.push_back(username);//Добавляем элемент в конец вектора passwords.push_back(password);//Добавляем объект в конец вектора } } bool Verifier(const std::string& username, const std::string& password,//Проверка совпадений const std::vector& usernames, const std::vector& passwords)//Списки логинов и паролей { for (size_t i=0; i?/\\|~";//Допустимые символы std::cout<<"Запуск брутфорса на пользователя: " << username<>choice;//Ввод с клавиатуры std::cin.ignore(); // пропускаем символ новой строки после ввода, чтобы избежать проблем с последующим вводом строк if(choice==1){//Условие выбора std::string username;//Переменная хранит имя пользователя и пароль std::cout<<"Введи логин: ";//Запрашиваем логин std::getline(std::cin, username);//Вводим логин с клавиатуры if(userExists(username)){//Если введеные пользователем данные совпадают std::cout<<"Пользователь найден"<