monito2207

Untitled

Aug 29th, 2022
46
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.46 KB | None | 0 0
  1. #include <iostream>;
  2. using namespace std;
  3. const int MAX_BUFFER_SIZE = 100;
  4. const int asciiSpace = 32, asciiTab = 9;
  5. /*Да се напише програма на C++, която за въведен от потребителя от стандартния вход
  6. символен низ, намира броя на думите с четна дължина и го извежда на стандартния изход.
  7. Пояснения: Дума се нарича всяка последователност от символи, която не включва интервал
  8. и/или табулация ('\t') или е ограничена от началото и/или края на низа. Броят на
  9. интервалите и табулациите не е ограничен.*/
  10.  
  11. int CountWords(const char str[]) {
  12.     int counter_letters = 0, counter_words = 0;
  13.     // This is a string
  14.     // 3
  15.     for (int i = 0; str[i] != '\0'; i += counter_letters + 1)
  16.     {
  17.         counter_letters = 0;
  18.         for (int j = 0; int(str[i + j]) != asciiTab && int(str[i + j]) != asciiSpace && int(str[i + j]) != '\0'; j++)
  19.         {
  20.             counter_letters++;
  21.             cout << "Symbol " << str[i + j] << " is: " << counter_letters << "th; " << endl;
  22.         }
  23.  
  24.         if (counter_letters % 2 == 0 && counter_letters != 0)
  25.         {
  26.             counter_words++;
  27.         }
  28.     }
  29.     return counter_words;
  30. }
  31.  
  32. int main() {
  33.     char str[MAX_BUFFER_SIZE];
  34.     cin.getline(str, MAX_BUFFER_SIZE);
  35.  
  36.     cout << CountWords(str) << endl;
  37.     return 0;
  38. }
Advertisement
Add Comment
Please, Sign In to add comment