Advertisement
RlCK

slownikv2

Mar 20th, 2019
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.78 KB | None | 0 0
  1. #include <iostream>
  2. #include <fstream>
  3. #include <vector>
  4. #include <algorithm>
  5. using namespace std;
  6. string skrwew(string licz,string mian)
  7. {
  8.     int n=licz.size();
  9.     for(int i=0;i<n;i++)
  10.     {
  11.         if(licz[i]==mian[0]&&mian.size()>0)
  12.         {
  13.             licz.erase(i,1);
  14.             mian.erase(0,1);
  15.             i--;
  16.         }
  17.     }
  18.     if(mian.size()==0)
  19.         return licz;
  20.     else
  21.         return "000";
  22.  
  23. }
  24. string skrr(string slowo,vector <string> &tab)
  25. {
  26.  
  27.     int t=tab.size();
  28.     string mian;
  29.     for(int i=0;i<t;i++)
  30.     {
  31.         mian=tab[i];
  32.         if(slowo.size()>mian.size())
  33.             if(skrwew(slowo,mian)!="000")
  34.             {
  35.                 tab.erase(i,1);
  36.                 return skrwew(slowo,mian);
  37.             }
  38.         else
  39.             continue;
  40.     }
  41.     return "";
  42. }
  43. bool szukanie(string text,vector <string> &tab)
  44. {
  45.     for(int i=0;i<tab.size();i++)
  46.     {
  47.         if(text==tab[i])
  48.             return 1;
  49.     }
  50.     return 0;
  51. }
  52. int main()
  53. {
  54.     ifstream licz("slownik.txt");
  55.     string slowo,a;
  56.     vector <string> tab;
  57.     //vector <string> tab2;
  58.     while(!licz.eof())
  59.     {
  60.         licz>>a;
  61.         tab.push_back(a);
  62.         //tab2.push_back(a);
  63.     }
  64.     //reverse(tab2.begin(),tab2.end());
  65.     string X;
  66.     cin>>X;
  67.     if(szukanie(X,tab)==0)
  68.     {
  69.         cout<<"nie ma licznika";
  70.         return 0;
  71.     }
  72.     string text;
  73.     int zl;
  74.     for(zl=0;zl<tab.size();zl++)
  75.     {
  76.         text=skrr(X,tab);
  77.         if(szukanie(text,tab)==0)
  78.             continue;
  79.         else
  80.             break;
  81.     }
  82.     if(zl==ta.size())
  83.     {
  84.         cout<<text<<" nie ma w slowniku";
  85.         return 0;
  86.     }
  87.     if(text.size()>0)
  88.         cout<<text<<endl;
  89.     else
  90.         cout<<"nie istnieje";
  91.  
  92.     return 0;
  93. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement