• 1
    إدخال وإخراج البيانات
    • المهام
  • 2
    الشروط
    • المهام
  • 3
    حلقة for
    • المهام
  • 4
    السلاسل النصية
    • المهام
  • 5
    حلقة while
    • المهام
  • 6
    القوائم
    • المهام
  • 7
    مصفوفات ثنائية الأبعاد
    • المهام
  • 8
    القواميس
    • المهام
  • 9
    المجموعات
    • المهام
  • 10
    الدوال والتكرار
    • المهام
  • к

درس 4. Lines

الصعوبة:

иконка человека красный иконка человека белая иконка человека зеленая Pythonlib

مسألة«مسابقة»

💻 Python

تشارك في مسابقة أدبية مرموقة. لا تقدر هيئة التحكيم عمق الفكر فحسب، بل أيضًا ثراء اللغة. لإثارة الإعجاب، قررت تحليل مقالتك والعثور على أطول وأقصر كلمة فيه. سيساعدك هذا في فهم مدى تنوع مفرداتك.

rn

المهمة:
اكتب برنامجًا يقبل سطرًا واحدًا من النص (مقالتك) ويجد أطول وأقصر كلمة فيه.

rn

القيود:

rn
    rn
  1. الكلمة & nbsp; & mdash; هي أي تسلسل من الأحرف مفصولة بمسافات.
  2. rn
  3. علامات الترقيم: & nbsp; يتم تجاهل علامات الترقيم في بداية الكلمة أو نهايتها (الرموز .,!?;:-").
  4. rn
  5. حالة الأحرف: & nbsp; يجب أن تكون مقارنة الكلمات حساسة لحالة الأحرف. تعتبر الكلمات ذات الأحرف المختلفة مختلفة.
  6. rn
  7. حل التعادل: rn
      rn
    • إذا كانت عدة كلمات لها نفس الطول الأقصى، فإن أطول كلمة تعتبر هي الأولى أبجديًا.
    • rn
    • إذا كانت عدة كلمات لها نفس الطول الأدنى، فإن أقصر كلمة تعتبر هي الأولى أبجديًا.
    • rn
    rn
  8. rn
  9. الإدخال الفارغ: إذا لم تكن هناك كلمات في النص (السطر فارغ أو يتكون فقط من مسافات وعلامات ترقيم)، يجب أن يعرض البرنامج الرسالة "لا توجد كلمات".
  10. rn
rn

& nbsp;

تنسيق الإدخال

سطر واحد من النص (سلسلة نصية)، قد يحتوي على كلمات ومسافات وعلامات ترقيم.

تنسيق الإخراج

أطول كلمة من النص (سلسلة نصية). في السطر التالي & mdash; أقصر كلمة من النص (سلسلة نصية).
إذا لم يتم العثور على كلمات، سطر واحد "لم يتم العثور على كلمات." (سلسلة نصية).

مثال

إدخال

مرحبًا، سلام! هذه كلمة طويلة جدًا جدًا وكلمة أخرى.

إخراج

جدًا، جدًا
و

تلميح

There will be no clue here, decide for yourself!

main.py
اختبار 1
اختبار 2
اختبار 3
اختبار 4
اختبار 5
اختبار 6
اختبار 7
اختبار 8
اختبار 9
اختبار 10
حل المطور
# Заранее определяем строку со знаками препинания, которые нужно удалить
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)

🎉 تهانينا! 🎉

لقد حللت المهمة ببراعة! كان صعبًا لكنك وجدت الحل الصحيح. أنت خطوة أقرب إلى الاحتراف! استمر، كل مرحلة تجعلك أقوى.

AD

إعلان

red-snake blue-snake green-snake

جارٍ تشغيل الكود...

مساعد الذكاء الاصطناعي

مرحباً! أنا مساعدك في البرمجة. اسألني أي شيء عن Python — يمكنني شرح الدوال والطرق ومساعدتك في المهمة الحالية!