Форум программистов, компьютерный форум CyberForum.ru

Заменить несколько подряд идущих пробелов одним - C++

Восстановить пароль Регистрация
 
lerka1996
2 / 2 / 0
Регистрация: 04.03.2015
Сообщений: 76
07.10.2015, 16:46     Заменить несколько подряд идущих пробелов одним #1
Напишите программу, которая посимвольно читает из std::cin, пока не достигнет конца потока ввода, и заменяет несколько подряд идущих пробелов одним и выводит полученный результат в std::cout. Никаких других символов, кроме пробелов удалять не нужно. При выполнении задания вам не разрешается пользоваться дополнительной памятью, а именно: массивами, стандартными контейнерами и строками, даже если вы уже с ними знакомы. Вы можете определять любые вспомогательные функции, если они вам нужны.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.10.2015, 16:46     Заменить несколько подряд идущих пробелов одним
Посмотрите здесь:

C++ Сжать строку, заменяя несколько подряд стоящих пробелов одним
C++ Подсчитать наибольшее количество идущих подряд пробелов
C++ Подсчитать наибольшее количество идущих подряд пробелов
C++ Подсчитать наибольшее количество идущих подряд пробелов
C++ В строке посчитать наибольшее количество идущих подряд пробелов
Удалить группы пробелов, которыми начинается и заканчивается строка, а каждую внутреннюю группу пробелов заменить одним пробелом C++
Вывести наибольшее количество пробелов, идущих подряд C++
Заменить несколько подряд идущих пробелов одним C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ture
 Аватар для ture
417 / 310 / 120
Регистрация: 27.11.2014
Сообщений: 1,004
07.10.2015, 16:53     Заменить несколько подряд идущих пробелов одним #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
 
int main() {
    
    char c;
    bool is_ok = true;
    while(std::cin.get(c)) 
        if(c != ' '){
            std::cout << c;
            is_ok = true;
        }else if(is_ok) {
            std::cout << c;
            is_ok = false;
        }
 
            
    
    
    //system("pause");
    return 0;
}
Yandex
Объявления
07.10.2015, 16:53     Заменить несколько подряд идущих пробелов одним
Ответ Создать тему
Опции темы

Текущее время: 08:49. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru