Вопрос задан 21.06.2026 в 06:54.
Предмет Информатика.
Спрашивает Хоцанян Давид.
С клавиатуры вводится строка, состоящая из слов, разделенных пробелами. Составьте программу, удаляющую лишние пробелы. Пробел считается лишним, если он стоит в начале или в конце строки, следует за пробелом, стоит перед знаком препинания.
Ответы на вопрос
Отвечает Мальцев Арсений.
Можно пройти по строке посимвольно и строить новую строку, добавляя пробел только тогда, когда он действительно нужен.
Пример программы на Python:
Pythons = input()
punctuation = ".,;:!?"
result = []
for ch in s:
if ch == " ":
# Пробел добавляем только если:
# 1) результат не пустой
# 2) предыдущий символ не пробел
if result and result[-1] != " ":
result.append(ch)
else:
# Если текущий символ — знак препинания,
# а перед ним уже стоит пробел, удаляем этот пробел
if ch in punctuation and result and result[-1] == " ":
result.pop()
result.append(ch)
# Если в конце строки остался пробел, удаляем его
if result and result[-1] == " ":
result.pop()
print("".join(result))
Например, если ввести:
Привет , как дела ?
программа выведет:
Привет, как дела?
Что делает программа:
-
Пробелы в начале строки не добавляются, потому что список
resultещё пустой. -
Несколько пробелов подряд заменяются одним пробелом.
-
Если перед знаком препинания оказался пробел, он удаляется.
-
Пробел в конце строки удаляется после обработки всей строки.
Знаки препинания заданы в строке:
Pythonpunctuation = ".,;:!?"
При необходимости туда можно добавить другие символы, например кавычки, скобки или многоточие.
Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
Предметы
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili

