Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <string>
- #include <fstream>
- using namespace std;
- int main() {
- string control;
- cin >> control; //вводим контрольное слово
- int len = control.length(); //длина контрольного слова (чтобы не считать её миллион раз в цикле for)
- ifstream file;
- file.open("task.txt"); //собственно файл
- string test;
- while (!file.eof()){
- getline(file, test); //считываем строку из файла
- bool check = true; //включаем флажок, на данный момент мы считаем, что считываемое из файла слово
- //содержит все буквы контрольного слова + любые другие
- for (int i = 0; i < len; i++){ //пробегаемся циклом по буквам контрольного слова
- string temp(1, control[i]); //temp - строка, длинной 1, состоящая из одной буквы контрольного лосва
- size_t found = test.find(temp); //ищем вхождение взятой буквы контрольного слова в проверяемое (считываемое из
- //файла) слово. size_t нужен, потмоу что мы получим либо найденный индекс,
- //либо npos (хуйня, получаемая, когда ничего не нашли)
- if (found == string::npos){ //если мы нихуя не нашли....
- check = false; //значит в контрольном слове есть буква, которой нет в проверяемом (считываемом)
- }
- }
- if (check){
- cout << test << endl; // если всё хорошо - выводим слово. Без ебли с контейнерами блять)))))
- }
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement