Массив

Модераторы: Hawk, Romeo, Absurd, DeeJayC, WinMain

Ответить
Turd
Сообщения: 7
Зарегистрирован: 11 апр 2005, 10:19

Здравствуйте
Нужна помошь-к зачету сдать нужно
итак
Даны натуральное число n, символы s1,...,sn.
а) Подсчитать наибольшее количество идущих подряд пробелов.
б) Выяснить, верно ли, что в последовательности s1,...,sn имеются пять идущих подряд букв е. (C++).
б) скорее всего сам смогу сделать.
а вот с а) загвоздка - не могу сделать поиск подряд идущих, да еще из всех подряд идущих групп нужно найти наибольшую.
Можете помочь подсказав хотя-бы принцип как это можно реализовать
Заранее спасибо :)
Аватара пользователя
WinMain
Сообщения: 929
Зарегистрирован: 14 янв 2005, 10:30
Откуда: Москва
Контактная информация:

Можно примерно так:

const char str[] = "3 пробела 4 пробела 5 пробелов 6 пробелов конец строки";
int n = 0, nSpace = 0, nMaxSpace = 0;
while (str[n] != '\0')
{
if (str[n++] != ' ') nSpace = 0;
else if (nMaxSpace < ++nSpace)
nMaxSpace = nSpace;
}
Аватара пользователя
WinMain
Сообщения: 929
Зарегистрирован: 14 янв 2005, 10:30
Откуда: Москва
Контактная информация:

P.S. HTML-документ вместо множества пробелов оставляет лишь один, поэтому в исходной строке текста нужно самому расставить соответствующее число пробелов
Аватара пользователя
AiK
Сообщения: 2287
Зарегистрирован: 13 фев 2004, 18:14
Откуда: СПб
Контактная информация:

HTML-документ вместо множества пробелов оставляет лишь один, поэтому
нужно использовать BBcode CODE.
Даже самый дурацкий замысел можно воплотить мастерски
Turd
Сообщения: 7
Зарегистрирован: 11 апр 2005, 10:19

Да... =)
я когда увидел, подумал наверно тот кто писал меня не так понял, набрал-работает
минут 10 разбирал как, вроде проясняется.
Спасибо =)
Ответить