Th3NiKo

Zadanie 6. Słowa Matura 2006

Apr 7th, 2019
155
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.87 KB | None | 0 0
  1. #include <iostream>
  2. #include <fstream>
  3. #include <vector>
  4. using namespace std;
  5.  
  6. int main()
  7. {
  8.     string slowo = "";
  9.     int najwiecej_wystapien=-1;
  10.     int ilosc=0;
  11.     fstream plik;
  12.     plik.open("dane.txt", ios::in);
  13.  
  14.     vector<string> listaSlow;        //To po prostu tablica, nie ma czego sie bac. Zaleta jest ze nie musisz znac jej wielkosci.
  15.     while(!plik.eof())
  16.     {
  17.         plik >> slowo;
  18.         listaSlow.push_back(slowo); //Dodajesz do "tablicy"
  19.         ilosc++;
  20.     }
  21.     ilosc = ilosc - 1;
  22.  
  23.     int ileSlowSiePotwarza = 0;
  24.     string najczestszeSlowo = "";
  25.     for(int i = 0; i < ilosc; i++){
  26.         int aktualnePotworzenia = 0;                 //Ile razy powtorzylo sie slowo ktore aktualnie sprawdzamy
  27.         string aktualneSprawdzane = listaSlow[i];    //Slowo ktore aktualnie sprawdzamy
  28.        
  29.         if(aktualneSprawdzane != "123"){            //Czy sprwadzalismy juz to slowo wczesniej
  30.            
  31.             for(int j = i; j < ilosc; j++){         //Porownujemy reszte slow z aktualnym
  32.                 if(aktualneSprawdzane == listaSlow[j]){ //Jezeli trafilismy na takie samo jak te ktore sprwadzamy
  33.                     listaSlow[j] = "123";            //Postaw flage zebysmy wiedzieli ze sprawdzone
  34.                     aktualnePotworzenia++;
  35.                 }
  36.             }
  37.             //Czy byly potworzenia?
  38.             if(aktualnePotworzenia > 1){
  39.                 ileSlowSiePotwarza++;
  40.             }
  41.             //Czy to slowo jest najczesciej potworzane dotychczas?
  42.             if(aktualnePotworzenia > najwiecej_wystapien){
  43.                 najczestszeSlowo = aktualneSprawdzane;
  44.                 najwiecej_wystapien = aktualnePotworzenia;
  45.             }
  46.         }
  47.  
  48.     }
  49.  
  50.     cout << ileSlowSiePotwarza << endl;
  51.     cout << najczestszeSlowo << endl;
  52.     cout << najwiecej_wystapien << endl;
  53.  
  54.  
  55.     plik.close();
  56.     return 0;
  57. }
Advertisement
Add Comment
Please, Sign In to add comment