Advertisement
Chepets_Sergey

lab1 kotkorlo

Jan 17th, 2018
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.52 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4. #include <fstream>
  5. #include <windows.h>
  6. #include <iostream>
  7.  
  8. using namespace std;
  9.  
  10. int main()
  11. {
  12. SetConsoleCP(1251);
  13. SetConsoleOutputCP(1251);
  14.  
  15. char s[100000];
  16. int  number [10000];
  17. //char a;
  18.  
  19. int i,j=0,n=0,k=0, g, max=0, hulp=0, hulp_1=0;
  20.  
  21. /*Набор текста и одновременный подсчет длины каждого слова.*/
  22.  
  23. ifstream fin("f.txt");
  24. if (!fin.is_open()) // если файл не открыт
  25.         cout << "Файл не может быть открыт!\n"; // сообщить об этом
  26. else
  27.   {
  28. fin.getline(s, 100000); // считали строку из файла
  29.  
  30.  for (i=0;i<100000;++i)
  31.  {
  32.  
  33. if (s[i]=='n')
  34. {
  35.    number[k]=j;
  36.    break;
  37. }
  38.  
  39.     ++n;
  40.  
  41.     if (s[i] != ' ')
  42.     {
  43.         ++j;
  44.     }
  45.  
  46.     if (s[i]==' ')
  47.     {
  48.         number[k]=j;
  49.         ++k;
  50.         j=0;
  51.     }
  52.  
  53.  }
  54. }
  55.  
  56. /*Отыскание самого длинного слова и его позиции в тексте */
  57.  
  58. max=number[0];
  59.  for (g=0;g<k;++g)
  60.  {
  61.  
  62. if (number[g]>max)
  63. {
  64.     max=number[g];
  65.     hulp=g;
  66. }
  67.  }
  68.  
  69. ++hulp;
  70.  
  71. /*Вывод на экран самого длинного слова и его позиции */
  72.  
  73.  printf("Самое длинное слово и его позиция %d: ", hulp);
  74.  
  75.  for (g=0;g<n;++g)
  76.  {
  77.      if (s[g]==' ')
  78.  
  79.      {
  80.          ++hulp_1;
  81.      }
  82.      if (hulp-hulp_1==1)
  83.      printf("%c", s[g]);
  84.  
  85.      if (hulp_1>g)
  86.      break;
  87.  
  88.  }
  89.  
  90.    return 0;
  91. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement