🎉 Glückwunsch! 🎉
Du hast die Aufgabe hervorragend gelöst! Es war schwierig, aber du hast die Lösung gefunden. Du bist dem Meister einen Schritt näher! Mach weiter so.
ProgerLib Python für alle
Sie nehmen an einem prestigeträchtigen Literaturwettbewerb teil. Die Jury schätzt nicht nur die Tiefe des Gedankens, sondern auch den Wortreichtum der Sprache. Um zu beeindrucken, haben Sie beschlossen, Ihren Aufsatz zu analysieren und das längste und kürzeste Wort darin zu finden. Dies wird Ihnen helfen zu verstehen, wie vielfältig Ihr Wortschatz ist.
Aufgabe:
Schreiben Sie ein Programm, das eine Textzeile (Ihren Aufsatz) entgegennimmt und das längste und kürzeste Wort darin findet.
Einschränkungen:
.,!?;: ) sollten entfernt werden. Wenn nach dem Entfernen der Satzzeichen das Wort leer ist, wird es nicht berücksichtigt. & nbsp;
Eine Textzeile (Zeichenkette), die Wörter, Leerzeichen und Satzzeichen enthalten kann.
Das längste Wort aus dem Text (String). In der nächsten Zeile — das kürzeste Wort aus dem Text (String).
Wenn keine Wörter gefunden werden, eine Zeile "Wörter wurden nicht gefunden." (String).
Hallo, Frieden! Dies ist ein sehr, sehr langes Wort und ein weiteres Wort.
Sehr, sehr
und
# Заранее определяем строку со знаками препинания, которые нужно удалить
punctuation = '.,!?:;-"()\''
# Получаем строку текста от пользователя
text = input()
# Преобразуем весь текст в нижний регистр для регистронезависимого сравнения
# и разбиваем его на отдельные слова по пробелам
raw_words = text.lower().split()
# Создаем пустой список для хранения очищенных слов
cleaned_words = []
# Используем цикл for для перебора каждого "сырого" слова
for raw_word in raw_words:
# Удаляем знаки препинания с начала и конца каждого слова
word = raw_word.strip(punctuation)
# Если после очистки слово не стало пустым, добавляем его в наш список
if word:
cleaned_words.append(word)
# Проверяем, нашлись ли в тексте какие-либо слова
if not cleaned_words:
# Если список пуст, выводим соответствующее сообщение
print("Слова не найдены.")
else:
# Инициализируем самое длинное и самое короткое слово первым словом из списка
longest_word = cleaned_words[0]
shortest_word = cleaned_words[0]
# Начинаем цикл со второго элемента, так как первый уже взят за основу
for word in cleaned_words[1:]:
# Условие для поиска самого длинного слова
# Оно становится новым самым длинным, если его длина больше
# ИЛИ если длины равны, но оно по алфавиту идет раньше
if len(word) > len(longest_word) or (len(word) == len(longest_word) and word < longest_word):
longest_word = word
# Условие для поиска самого короткого слова
# Оно становится новым самым коротким, если его длина меньше
# ИЛИ если длины равны, но оно по алфавиту идет раньше
if len(word) < len(shortest_word) or (len(word) == len(shortest_word) and word < shortest_word):
shortest_word = word
# Выводим найденное самое длинное слово
print(longest_word)
# Выводим найденное самое короткое слово на новой строке
print(shortest_word)
🎉 Glückwunsch! 🎉
Du hast die Aufgabe hervorragend gelöst! Es war schwierig, aber du hast die Lösung gefunden. Du bist dem Meister einen Schritt näher! Mach weiter so.
AD
Werbung
Führe deinen Code aus...