Для решения задачи нужно обработать вводимый текст так, чтобы первая буква каждого предложения становилась заглавной. В условии говорится, что предложения разделены только точкой и пробелом, а сами слова — строчные. Кроме того, каждое предложение заканчивается точкой, и после точки обычно стоит пробел.
Общий подход:
- Изначально все слова в строке — строчные, и предложения заканчиваются точкой.
- Нужно найти каждую точку, которая завершает предложение, а затем сделать следующим за ней символ (после пробела) заглавной.
- Также следует убедиться, что первый символ строки тоже станет заглавным, потому что там начало предложения.
Пошаговое решение:
- Преобразовать строку в список символов (или использовать строковые методы).
- Сделать первую букву строки заглавной.
- Обойти строку, найти точки, за которыми стоит пробел, и превратить следующую за пробелом букву в заглавную.
- Заменить в строке соответствующий символ на заглавный, после чего собрать строку обратно.
Вот пример простого кода на Python:
def capitalize_sentences(text):
# Преобразуем строку в список символов для удобства
chars = list(text)
# Сделать первый символ заглавным, если он есть
if chars:
chars[0] = chars[0].upper()
# Проходим по списку и ищем точки
for i in range(len(chars)):
if chars[i] == '.' and i + 1 < len(chars):
# Проверяем, что после точки идет пробел (по условию)
if chars[i + 1] == ' ':
# Следующая после пробела буква — сделать заглавной
if i + 2 < len(chars):
chars[i + 2] = chars[i + 2].upper()
# Собираем обратно в строку
return ''.join(chars)
# Пример использования:
input_text = "прошу детей простить меня за то, что я посвятил эту книжку взрослому. скажу в оправдание: этот взрослый — мой самый лучший друг. и ещё: он понимает всё на свете, даже детские книжки."
output_text = capitalize_sentences(input_text)
print(output_text)
Объяснение:
- Мы сначала делаем первый символ строки заглавным, потому что он тоже начинается с предложения.
- Затем ищем все точки. После каждой точки, если за ней идёт пробел, делаем заглавной следующую букву (если есть).
- В резултате в строке первая буква каждого предложения станет заглавной.
Если хотите, я могу помочь вам протестировать этот код или адаптировать его под конкретный язык программирования.