Все числа, содержащиеся в обоих файлах одновременно, удалить из первого

279
21 января 2017, 11:40

Имеется такая учебная задача:

Создать два текстовых файла, все числа, содержащиеся в обоих файлах одновременно, удалить из первого файла. Дополнительных массивов и файлов не использовать.

Создаю файлы я вот так:

ofstream fout("1.txt");
fout << "619";
fout.close();
system("pause");
ofstream fout1("2.txt");
fout1 << "618";
fout1.close();
system("pause");

Далее требуется сравнить данные и удалить. Как это реализовать?

Answer 1

Ну, что-то такого вида:

int main(int argc, const char * argv[])
{
    {
        ofstream out1("file1");
        for(int i = 0; i < 500; ++i) out1 << rand() << "\n";
        ofstream out2("file2");
        for(int i = 0; i < 500; ++i) out2 << rand() << "\n";
    }
    vector<int> s1, s2, s3;
    {
        int n;
        ifstream in1("file1");
        while(in1 >> n) s1.push_back(n);
        ifstream in2("file2");
        while(in2 >> n) s2.push_back(n);
    }
    sort(s1.begin(),s1.end());
    sort(s2.begin(),s2.end());
    set_difference(s1.begin(),s1.end(),s2.begin(),s2.end(),back_inserter(s3));
    {
        ofstream out("file3");
        for(int n: s3) out << n << "\n";
    }
}
READ ALSO
Поиск ближайшего значения в массиве

Поиск ближайшего значения в массиве

Допустим, дано расписание автобусов на какой-то день, в виде списка числовых значенийОпределить ближайший к текущему времени автобус

285
Что такое индекс mysql и как их использовать

Что такое индекс mysql и как их использовать

Можете привести понятный пример индекса в таблицах? В документациях столько всего написано, это вводит в заблуждениеИндекс - это и есть первичный...

277
Как добавить(прибавить) значение в поле MySQL?

Как добавить(прибавить) значение в поле MySQL?

Как добавить в поле БД значение, не перезаписывая его ? Например, добавить в поле words БД users значения (сначала одно, потом второе и пр), НО только...

323