Computer >> Máy Tính >  >> Lập trình >> C ++

Chương trình C ++ để in các từ duy nhất trong một tệp

Tệp là một vị trí bộ nhớ lưu trữ các luồng từ. Trong một tệp, có nhiều từ khác nhau. Trong chương trình này, chúng tôi sẽ tìm tất cả các từ duy nhất từ ​​tệp và in chúng.

A duy nhất word có nghĩa là số lần xuất hiện của từ là một trong tệp.

Ví dụ,

Tutorials point is best for programming tutorials.

Ở đây, hướng dẫn từ xuất hiện nhiều lần, do đó nó không phải là duy nhất. Còn lại tất cả các từ là duy nhất.

Thuật toán

To check for unique words in the given file.
Using iterator with two variables : data and occurence.
Input : File
Step 1 : Read each line from the file and follow step 2
Step 2 : check for the occurence of the word in the data structure using interator.data.
   Step 2.1 : if data matches increase the occurrence by one corresponding to the data.
   Step 2.2 : if data does not match add new value and set its occurence to one.
Step 3: Iterate over the date structure. And check for occurence value of each value.
   Step 3.1 : If the occerence is equals to 1 then prints the data corresponding it else do nothing.

Ví dụ

#include <bits/stdc++.h>
using namespace std;
int main(){
   char filename[] = "test.txt";
   ofstream fs("test.txt", ios::trunc);
   fs << "tutorials point is best for programming tutorials";
   fs.close();
   fstream fs("test.txt");
   map<string, int> mp;
   string word;
   while (fs >> word){
      if (!mp.count(word))
         mp.insert(make_pair(word, 1));
      else
         mp[word]++;
   }
   fs.close();
   for (map<string, int> :: iterator p = mp.begin();
   p != mp.end(); p++){
      if (p->second == 1)
         cout << p->first << endl;
   }
   return 0;
}

Đầu ra

best
for
is
point
Programming