39; ( перевод строки).

Дата публикации: 27.01.2024

39; ( перевод строки).


Написать программу на С+. Дана строка символов. Признак конца строки - символ "\n' ( перевод строки).

Вот пример программы на C++, которая удаляет лишние пробелы из строки без использования массивов:

#include <iostream>
#include <string>

int main() {
    std::string input;
    std::getline(std::cin, input); // Ввод строки с пробелами

    std::string output;
    bool previousSpace = false; // Флаг для отслеживания предыдущего пробела

    for (char c : input) {
        if (c == ' ') {
            if (!previousSpace) {
                output += c; // Добавляем пробел в выходную строку, если предыдущий символ не был пробелом
                previousSpace = true;
            }
        } else {
            output += c; // Добавляем символ в выходную строку
            previousSpace = false;
        }
    }

    std::cout << output << std::endl; // Вывод строки без лишних пробелов

    return 0;
}

Программа считывает строку с пробелами с помощью функции std::getline(), а затем проходит по каждому символу строки. Если символ - пробел, то он добавляется в выходную строку только если предыдущий символ не был пробелом. Если символ не является пробелом, он добавляется в выходную строку. В конце программа выводит полученную строку без лишних пробелов.