Проблема в том, что параметр sep не работает с функцией input() и не выполняет разбиение строки на слова. Параметр sep используется для функции print() при выводе нескольких аргументов, а не для разделения одного аргумента на части.
Чтобы получить вывод по словам, нужно сначала использовать метод .split() для разделения введенной строки на слова, а затем вывести их по одному. Как пример:
text = input() # Ввод строки
words = text.split() # Разделение строки на слова
print(*words, sep='\n') # Печать каждого слова с новой строки
лукоморья
дуб
зеленый.
Но программа выводит исходную строку, в чем дело?