IPB
ЛогинПароль:

> Внимание!

1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

> Длина максимальной серии символов, C++
сообщение
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 18
Пол: Женский
Реальное имя: Olya

Репутация: -  0  +


unsure.gif Помогите пожалуйста написать программку. Буду очень благодарна yes2.gif

Вот что-то вроде алгоритма:
программка идет по заданному тексту (одномерному массиву), если встречается буква, то идем далее, если цифра или другой символ, счётчик +1 данного участка, запоминаем счётчики на отд. участках, заем они сравниваются, программка выдает максимальный.

Код
Я хотела &!123 бы быть 8936!, крев едкой! :blum:
Ответ:6


Сообщение отредактировано: Olya -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Гость






Цитата
нам нельзя использовать классы
А где ты здесь классы увидела? Это вообще практически чистый С, а не С++. А вот смешивать одно с другим, как этого хочешь ты (в частности, вроде бы и С++, но и классы не использовать, хотя std почему-то можно) я бы не советовал... Как строку представлять, например, будешь? Вообще-то подразумевается std::string, но ведь это - класс, тебе нельзя этим пользоваться...

Если непонятно использование оператора ?: - то вот то же самое, но с if-ами:

#include <ctype.h>
#include <stdio.h>

int main()
{
char s[256]; // Буфер под строку
int count, max = 0;

gets(s); // читаем строку с клавиатуры... Если хочешь, можешь заменить на cin.getline(s, 256);

// для каждого символа строки проделываем следующее
for(char *p = s, count = 0; *p; p++)
// если символ - буква или пробел (32 - это код пробела) ...
if(isalpha(*p) || *p == 32) {
// ... то если полученное на данный момент число символов в серии больше максимального
if(count > max) {
max = count; // тогда запоминаем его как максимальное
count = 0; // а собственно счетчик - обнуляем
}
}
else count += 1; // если же это не буква и не пробел, то увеличиваем счетчик символов

printf("%d", max);
// печатаем результат. При желании можно заменить
// на cout << "max = " << max << endl;
return 0;
}



Сообщение отредактировано: volvo -
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 25.04.2024 16:17
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name