Есть строка, в которой имена записаны через один или несколько пробелов.
Выведи эти же имена, но раздели их запятой с одним пробелом.
Ввод Вывод
Вася Алиса Макс Эмилия Серёжа Аня Вася, Алиса, Макс, Эмилия, Серёжа, Аня
Задача понятна. Цель — понять решение и пояснить шаги.
Как решить
- Проблема: имена разделены одним или несколькими пробелами. Нужно получить те же имена, но через запятую и пробел.
- Решение по шагам:
1) Разделить исходную строку на отдельные имена. При этом учтём, что между именами может быть несколько пробелов.
2) Соединить полученные имена в одну строку, используя запятую и пробел между ними.
- Эффект: получается строка вида "Имя1, Имя2, Имя3".
Почему так работает
- Разделение по пробелам (или по любому пробельному символу) избавляется от лишних пробелов и даёт чистый список имён.
- Соединение списка через ", " формирует нужный формат вывода.
Пример
- Ввод: Вася Алиса Макс Эмилия Серёжа Аня
- Шаги: ["Вася", "Алиса", "Макс", "Эмилия", "Серёжа", "Аня"] → "Вася, Алиса, Макс, Эмилия, Серёжа, Аня"
- Вывод: Вася, Алиса, Макс, Эмилия, Серёжа, Аня
Примеры кода (самое простое решение)
- Python
def format_names(s):
names = s.split() # разделяет по любым пробелам и убирает лишние
return ', '.join(names)
# Пример использования
input_str = "Вася Алиса Макс Эмилия Серёжа Аня"
print(format_names(input_str)) # Вася, Алиса, Макс, Эмилия, Серёжа, Аня
- JavaScript
function formatNames(s) {
return s.trim().split(/\s+/).join(', ');
}
// Пример использования
const input = "Вася Алиса Макс Эмилия Серёжа Аня";
console.log(formatNames(input)); // Вася, Алиса, Макс, Эмилия, Серёжа, Аня
- Java (вариант без лишних пробелов)
String result = input.trim().replaceAll("\\s+", ", ");
// Этот подход работает аналогично: любые последовательности пробелов становятся запятой и пробелом.
Дополнительные заметки
- В некоторых языках split без аргументов или с конкретным символом пробела может не учитывать множественные пробелы. Чтобы быть надёжнее, используйте разделение по любому пробелу/регулярному выражению, как в примерах выше.
- Если вход может быть пустым или состоять только из пробелов, итоговая строка будет пустой. Можно дополнительно обработать этот случай по желанию.
Если хочешь, могу адаптировать решение под конкретный язык программирования или платформу, на которой учишься.