Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
KirillNSK
0 / 0 / 0
Регистрация: 29.07.2016
Сообщений: 58
#1

Сравнение двух списков, на основе vector <string> - C++

21.11.2016, 13:38. Просмотров 143. Ответов 1
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
# include <iostream>
# include <string>
# include <fstream>
# include <vector>
# include <iterator>
# include <algorithm>
 
using namespace std;
 
class Load 
{
protected:
    vector <string> Old;
    vector <string> New;
    vector <string> Write;
    string OldPack;
    string  NewPack;
            
public:
    
    void LoadPack ()
    {
        
        ifstream Old ("Pack.txt");
 
        if (Old)
        {
            while (getline (Old, OldPack))
            this -> Old.push_back (OldPack);
                        
            Old.close ();
        }
        else
            cout << "Ошибка!\n";
 
        ifstream New ("Pack2.txt");
 
        if (New)
        {
            while (getline (New, NewPack))
            this -> New.push_back (NewPack);
            
            New.close ();
        }
        else
            cout << "Ошибка!\n";
    }
    
};
 
class DubScan : public Load
{
public: 
    string Name;
public:
    
    void Scan ()
    {
        for (unsigned int i = 0; i < OldPack.size(); i ++)
            for (unsigned int c = 0; c < NewPack.size(); c ++)
                if (OldPack [i] == NewPack [c])
                {
                    NewPack.erase (remove (NewPack.begin (), NewPack.end (), NewPack [c]), NewPack.end ()); 
                }
                else
                {
                    FileEntry ();
                }
    }
 
    void FileEntry ()
    {
        ofstream Entry (Name);
 
        if (Entry)
        {
            for (unsigned int i = 0; i < Write.size (); i ++)
                cout << Write.at (i) << '\n';
        }
        else
        {
            cout << "Ошибка!" << '\n';
        }
        Entry.close ();
    }
 
    DubScan (string h)
    {
        Name = h;
    }
    
};
 
int main ()
{
    setlocale (LC_ALL, "RUSSIAN");
 
    string h;
 
    cout << "Сверим 2 файла на наличие дублей" << endl;
    cout << "Одинаковые сотрем" << endl;
    cout << "Введем наименование файла записи:" << endl;
 
    cin >> h;
 
    DubScan Entr (h);
 
    Entr.FileEntry ();
    
    system ("pause");
    return 0;
}
Здравствуйте, помогите пожалуйста, все компилируется, но не работает.
Программа должна сравнить два списка, если во втором списке есть повторы, она их удаляет, из оставшиеся элементы списка сохраняет в третьем файле txt.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.11.2016, 13:38
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Сравнение двух списков, на основе vector <string> (C++):

Сравнение списков vector <string> - C++
# include &lt;iostream&gt; # include &lt;string&gt; # include &lt;fstream&gt; # include &lt;vector&gt; # include &lt;iterator&gt; # include &lt;algorithm&gt; ...

На основе исходного std::vector<std::string> содержащего числа, создать std::vector<int> с этими же числами - C++
подскажите есть вот такая задача. Есть список . Создать второй список, в котором будут все эти же числа, но не в виде строк, а в виде...

Сравнение двух списков - C++
Доброго всем времени суток. Изначальное задание было вот таким - &quot;написать программу, содержащую функцию, которая определяет, входит...

Не могу вставить элемент в second(vector) мультимапа. multimap<string, vector<string>> - C++
#include &lt;iostream&gt; #include &lt;map&gt; #include &lt;vector&gt; #include &lt;algorithm&gt; #include &lt;string&gt; #include &lt;iterator&gt; int main() ...

Сравнение элементов двух однонаправленных линейных списков - C++
А как сравнить элементы двух списков? Чтобы при совпадении элементов счётчик прибавлял единичку? Если список вот так задан: #include...

сравнение двух string - C++
Вот написала функцию для сравнения двух string (а именно численно) но нужно чтоб возвращала функцию значения true или false. а возвращает...

1
nmcf
5324 / 4644 / 1553
Регистрация: 14.04.2014
Сообщений: 18,479
21.11.2016, 14:16 #2
Как-то так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
    void Scan ()
    {
        for (unsigned int i = 0; i < OldPack.size(); i ++)
            for (unsigned int c = 0; c < NewPack.size(); c ++)
                if (OldPack [i] == NewPack [c])
                {
                    NewPack.erase (remove (NewPack.begin (), NewPack.end (), NewPack [c]), NewPack.end ()); 
                }
 
        FileEntry ();
    }
 
    DubScan (string h)
    {
        Name = h;
        LoadPack();
    }
В main() вызывай Scan(), а не FileEntry().
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.11.2016, 14:16
Привет! Вот еще темы с ответами:

Сравнение двух string - C++
Почему код не работает? #include&lt;iostream&gt; using namespace std; struct test { string name; int tree; }yaguar; int main() ...

Сравнение двух строк string - C++
Добрый день. Никак не пойму почему не хочет работать такой способ сравнения двух string строк, сравнивает верно только если ввести...

Разделить vector<string> на два vector<string> - C++
У меня есть vector&lt;string&gt; line_from_file; line_from_file.resize(N); N-некое число Когда я встречу точку &quot;.&quot; в...

Доступ к паре в map<string, vector<pair<string, string>>>Temp - C++
Подскажите пожалуйста как получить данные в векторе пар ? void showData(const map&lt;string, vector&lt;pair&lt;string, string&gt;&gt;&gt;Temp) { ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru