ledrose

Частотный анализ

Apr 26th, 2020
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.59 KB | None | 0 0
  1. #include <list>
  2. #include <iterator>
  3. #include <iostream>
  4. #include <cstdlib>
  5. #include <fstream>
  6. #include <string.h>
  7. using namespace std;
  8. /* run this program using the console pauser or add your own getch, system("pause") or input loop */
  9.  
  10. struct elem {
  11.     char str[32];
  12.     int s;
  13. };
  14. typedef struct elem ELEM;
  15.  
  16. int main(int argc, char** argv) {
  17.     list <ELEM> LS;
  18.     list <ELEM> :: iterator it;
  19.     ELEM constr;
  20.     char str[32];
  21.    
  22.     ifstream file("words.txt"); //подключаемся к файлу со словами
  23.     while (!file.eof()) {  //Цикл до конца файла
  24.         file.getline(str,sizeof(str)); //записываем слова в str
  25.         for (it=LS.begin();it!=LS.end();it++) {  //цикл для каждой ячейке списка
  26.             if (strcmp(str,(*it).str)==0) { //условие прибавление к ячейке списка единицы в случае если такое слово в списке есть
  27.                 (*it).s++; //прибавляем единичку к нужной ячейке
  28.                 break; //прерываем цикл
  29.             }
  30.         }
  31.         if (it==LS.end()) { //если слова в списке нету, (если прошлый цикл был пройден до конца, то это условие выполняется)
  32.             constr.s=1;  //заполняем данными переменную constr
  33.             strcpy(constr.str,str);
  34.             LS.push_back(constr); //пихаем её в список
  35.          }
  36.     }
  37.     file.close();
  38.     for (it=LS.begin();it!=LS.end() ;it++) { //вывод данных
  39.         cout<<(*it).str<<"....."<<(*it).s<<endl;
  40.     }
  41.     return 0;
  42. }
Add Comment
Please, Sign In to add comment