|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
03.03.2012, 17:35 | #1 |
Новичок
Джуниор
Регистрация: 03.03.2012
Сообщений: 1
|
Замена слов местами VС++
Доброго дня всем!
Есть файл, в нем текст, надо считать текст с файла и поменять местами четные и нечетные слова (1<=>2, 3<=>4, 5<=>6 и т.д.) Файл я инициализировал, открыл, считал все норм. не получается придумать алгоритм и код для замены слов местами. Собственно прошу вас помочь с телом цикла while в котором будет происходить замена. ПС. у меня там еще файл проэцируется в память, но это не важно. Код:
|
04.03.2012, 04:44 | #2 |
Участник клуба
Регистрация: 07.07.2009
Сообщений: 1,385
|
Наверное, про стеки говорить не имеет смысла, хотя это было бы тоже решением.
Предлагаю - два временных символьных контейнера (массивы). В один записываем четные слова (получается, что придется считать пробелы между словами, чтобы определить, где начало слова, а где конец), в другой - нечетные. Параллельно чистим файл, а потом возвращаемся на начало и начинаем записывать вначале четные слова (2), потом нечетные. При этом необходимо завести некий временный указатель, который будет хранить также место (индекс) символа, где завершилось считывание первой пары. Как только пара выгрузилась, чистим временные контейнеры и записываем в них следующую пару (3 и 4). Запись который уже начинается с того места, где стоял временный указатель. Этот алгоритм используем, если надо в тот же файл записать... А если в новый, все просто - выливаешь в новый файл контейнеры по очереди. Если надо со стеками, то там вообще еще проще н е надо контейнеров заводить, стек сам как контейнер, заводишь в нем 3 поля и вперед.
"Все мы жаждем чудес. Чисто человеческое свойство." Carl Sagan
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Замена слов | Афанасий[vedma] | Visual C++ | 0 | 20.11.2011 10:57 |
Замена строк местами | U4-nik | Общие вопросы Delphi | 2 | 30.05.2011 10:42 |
Задача: Замена слов местами в Microsoft Office Word | andresss | Microsoft Office Word | 10 | 08.01.2011 12:15 |
замена слов | sergeiqwe | PHP | 2 | 05.05.2010 19:29 |
Дан рядок слов,поменять 1 слово со 2 местами, 2 с 3 и тд. | shpack | Помощь студентам | 0 | 13.01.2010 00:44 |