qwertyuiop

#include <string> #include <vector> #include <sstream> #include <iostream> #include <utility> #include <algorithm> using namespace std; /* TODO: Терминология: В условиях задач используется следующая терминология:  Текст – произвольная последовательность символов.  Разделитель – символ пробела.  Слово – последовательность символов, не содержащая разделителей.  Серия – последовательность, состоящая из совпадающих элементов.  Предложение – последовательность слов, разделенных одним разделителем.  Подстрока – часть строки, обладающая указанными свойствами.  Вхождение (символа или подстроки) – наличие символа или подстроки в строке. При решении задачи следует: 1) обеспечить ввод с клавиатуры исходного текста, строки или последовательности символов, которые должны присваиваться в качестве значения символьного массива; 2) исключить использование встроенных подпрограмм, предназначенные для работы со строками, за исключением подпрограммы strlen, которая определяет текущую длину строки; 3) для проверки работоспособности программы необходимо разработать и выполнить соответствующие тесты, которые предъявляются при сдаче задания; 4) при оформлении текста программы обязательно использование отступов. Характеристикой слова назовем длину содержащейся в нем максимальной серии. Упорядочить слова заданного предложения в соответствии с ростом их характеристик. */ vector <string> split(string defaultString) //функция для разделения строки на массивы, которая принимает одно значение и возвращает два { string word = ""; int numChar = 0; vector <string> wordsVector; while (defaultString[numChar] != '\0') { word = word + defaultString[numChar]; numChar++; if (defaultString[numChar] == ' ' && defaultString[numChar + 1] == '\0'){ numChar++; wordsVector.push_back(word); word = ""; } } return wordsVector; } int character(string word) { int i = 0; int n = 1; int max = 0; string tx = word; //слово char simbolsuka = tx[0]; int length = tx.length(); //Длина слова for (i = 1; i <= length; i++) if (tx[i] == simbolsuka) { n++; } else { if (n > max) { max = n; } n = 1; simbolsuka = tx[i]; } return max; } int main() //Основная функция { string stroka; getline(cin, stroka); vector <string> words; cout << stroka << endl; words = split(stroka); int max = 0; for (int i = 0; i < words.size(); i++) { cout << words[i] << endl; cout << character(words[i]) << endl; } // system("pause"); return 0; }

Be the first to comment

You can use [html][/html], [css][/css], [php][/php] and more to embed the code. Urls are automatically hyperlinked. Line breaks and paragraphs are automatically generated.