Страница 1 из 1

C++ Символы и файлы

Добавлено: 09 фев 2009, 14:17
Yura_ua
Здравствуйте. Помогите кто-нибудь решить задачку:
В текстовом файле находиться произвольный набор символов. Найти и вывести на экран самую длинную последовательность, которая состоит только из цифр, но не более 50 символов

Re: C++ Символы и файлы

Добавлено: 10 фев 2009, 05:58
atavin-ta
коды цифр идут подряд. отсюда:

Код: Выделить всё

if ((c>='0')&(c<='9'))
Исспользуй счётчик текущей позиции и счётчик начала последовательности. Длина - разность между ними. Кроме того, исспользуй буфера текущей и последней найденной последовательностей и буфер длины последней найденной последовательности.

Re: C++ Символы и файлы

Добавлено: 10 фев 2009, 15:01
Yura_ua
atavin-ta писал(а): Исспользуй счётчик текущей позиции и счётчик начала последовательности. Длина - разность между ними. Кроме того, исспользуй буфера текущей и последней найденной последовательностей и буфер длины последней найденной последовательности.

А как узнать текущую позицию?

Re: C++ Символы и файлы

Добавлено: 10 фев 2009, 15:57
Yura_ua
Извините, глупый был вопрос)))

Re: C++ Символы и файлы

Добавлено: 10 фев 2009, 16:06
Albor
Можно попробовать применить функцию atoi передавая ей указатель, смещающияся от начала исходного массива. Если указатель попадёт на символ цифры, то функция вернёт все цифры в виде целого числа до первого нецифрового символа. Думаю, идея понятна. Нужно её только развить. Конечно здесь есть недостаток: если последовательность будет очень длинной, то. наверное, будет глюк.