Advertisement
Guest User

Untitled

a guest
May 12th, 2014
582
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.00 KB | None | 0 0
  1. #include <iostream>
  2. #include <fstream>
  3. #include <cstdlib>
  4. #include <string>
  5.  
  6. using namespace std;
  7.  
  8. string slowa[1000];         //tabela na slowa
  9. int ilosc_powtorzen[1000];  //ilosc powtorzen slow
  10.  
  11. // funkcja sprawdza czy slowo jest juz dodane
  12. // zwraca pod jakim indeksem w tabeli sie znajduje
  13. int czy_slowo_juz_dodane(string slowo)
  14. {
  15.     for (int i = 0; i<1000; i++)
  16.     {
  17.         if (slowa[i]==slowo)
  18.             return i;
  19.     }
  20.  
  21.     return -1;
  22. }
  23.  
  24. int main()
  25. {
  26.     string slowo;
  27.     fstream plik;
  28.  
  29.     // ================ ZBIERANIE DANYCH =======================
  30.  
  31.     int licznik = 0; //indeks dla nowo dodawanych slow
  32.  
  33.     plik.open("dane.txt", ios::in);
  34.  
  35.     while(!plik.eof())
  36.     {
  37.         getline(plik, slowo);
  38.  
  39.         // zmienna 'index' zawiera index w tabeli
  40.         // gdzie znajduje sie badane slowo
  41.         // jezeli index = -1 to slowa jeszcze nie ma i trzeba dodac
  42.         int index = czy_slowo_juz_dodane(slowo);
  43.  
  44.         if ( index == -1) //slowa jeszcze nie ma
  45.         {
  46.             slowa[licznik] = slowo;
  47.             ilosc_powtorzen[licznik] = 1;
  48.             licznik++;
  49.         }
  50.         else // slowo juz jest wiec zwiekszamy ilosc jego wystapien
  51.         {
  52.             ilosc_powtorzen[index]++;
  53.         }
  54.     }
  55.     plik.close();
  56.  
  57.     // ========== ILE slow wiecej niz jeden raz? ===========
  58.  
  59.     int z = 0;
  60.  
  61.     for (int i = 0; i<1000; i++)
  62.         if ( ilosc_powtorzen[i] > 1 ) z ++;
  63.  
  64.     cout << z << " slow wystepuje wiecej niz 1 raz.\n\n ";
  65.  
  66.     // ========== Najwieksza ilosc wystapien slowa ===========
  67.     // ========== oraz ilosc jego wystapien ===========
  68.  
  69.     z = 0;
  70.     int powtorzenia = 0;
  71.  
  72.     for (int i = 0; i<1000; i++)
  73.         if ( ilosc_powtorzen[i] > powtorzenia )
  74.         {
  75.             powtorzenia = ilosc_powtorzen[i];
  76.             z = i;
  77.         }
  78.  
  79.     cout << slowa[z] << " <- to slowo wystepuje najczesciej" << endl;
  80.     cout << "czyli: " << powtorzenia << " razy.\n\n" << endl;
  81.  
  82.     system("PAUSE");
  83.     return(0);
  84. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement