0 / 0 / 0
Регистрация: 15.10.2011
Сообщений: 23
|
||||||
1 | ||||||
Лишние пробелы29.11.2011, 19:57. Показов 3464. Ответов 16
Метки нет (Все метки)
Здравствуйте. Выполняю задание на microsoft visual studio. Необходимо удалить лишние пробелы в строке, используя массив и нельзя использовать стандартные функции удаления. Вот код. Почему-то не работает.
0
|
29.11.2011, 19:57 | |
Ответы с готовыми решениями:
16
Удалить в строке все лишние пробелы, то есть серии подряд идущих пробелов заменить на одиночные пробелы Удалить лишние пробелы Удалить лишние пробелы Убрать лишние пробелы |
0 / 0 / 0
Регистрация: 15.10.2011
Сообщений: 23
|
|
29.11.2011, 20:10 [ТС] | 3 |
0
|
448 / 211 / 21
Регистрация: 07.10.2011
Сообщений: 462
|
||||||
29.11.2011, 20:13 | 4 | |||||
попробуйте другие способы ввода строки, например, getline
0
|
0 / 0 / 0
Регистрация: 15.10.2011
Сообщений: 23
|
|
29.11.2011, 20:20 [ТС] | 6 |
Когда стал использовать gets. Стал выводить просто ту же самую строку...
0
|
448 / 211 / 21
Регистрация: 07.10.2011
Сообщений: 462
|
||||||
29.11.2011, 21:20 | 7 | |||||
вот так попробуй
0
|
29.11.2011, 21:50 | 10 |
Здесь не подряд идущие пробелы играют роль, а внутренний цикл со сдвигами на сложность алгоритма Помните пример расчета сложности похожего алгоритма я приводил в топике с удалением элементов из массива.
0
|
29.11.2011, 22:10 | 11 |
да-да...
Тогда так: нашли второй в ряд пробел, запомнили его позицию. Ищем дальше в строчке первый символ, пробелом не являющийся, и пишем его в запомненную на первом шаге позицию. Далее просто записываем все следующие символы подряд до следующего пробела, инкрементируя позицию записи. Далее при встрече пробела пишем и его, надо ж по одному оставить, и опять начинаем искать следующий не пустой символ для записи. Дык, это ж, по сути, алгоритм простейшего случая дефрагментации!
0
|
29.11.2011, 22:17 | 12 |
Вот, другое дело, сложность данного алгоритма не более длины строки, о чем я и говорил, то есть пробегать по серии подряд идущих пробелов и только один записывать, а потом по серии не пробелов и записывать все элементы данной серии
0
|
25 / 25 / 1
Регистрация: 01.05.2011
Сообщений: 143
|
||||||
15.03.2012, 16:07 | 13 | |||||
Что бы не создавать лишний топик. вот 'создаю' и застрял.
Чего дальше то? Подскажите как обставить. Токо попроше плиз без наворотов
0
|
15.03.2012, 19:07 | 14 | |||||
Как у вас дальше - не знаю. Но в общем как-то так, примерно:
1
|
25 / 25 / 1
Регистрация: 01.05.2011
Сообщений: 143
|
|
15.03.2012, 19:26 | 15 |
О_о можно как то обозвать эти переменные , попонятней плиз. И так голова кругом
0
|
15.03.2012, 19:47 | 16 |
str - string - строка
res - result - результат sp_cnt - spaces count - счетчик пробелов rem_sps - removed spaces - удаленных пробелов cur_pos - current position - текущая позиция(индекс) Напрасно вы так - аглицкий для программирования в обязательном порядке.
1
|
25 / 25 / 1
Регистрация: 01.05.2011
Сообщений: 143
|
|
15.03.2012, 19:51 | 17 |
Спасибо с английским порядок. Просто сокращения добавляют головной боли. Пойду разбираться в логике.
0
|
15.03.2012, 19:51 | |
15.03.2012, 19:51 | |
Помогаю со студенческими работами здесь
17
Лишние пробелы в начале строки Удалить из текста лишние пробелы Убрать лишние пробелы в строке Удалить лишние пробелы в строке Удалить лишние пробелы из строки Удалить лишние пробелы в строке Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |