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

درس 3. FOR cycle

الصعوبة:

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

مسألة«اسم على لوحة الإعلان»

💻 Python

حصلت على وظيفة في وكالة الإعلانات الإبداعية "creativeplus". مهمتك الأولى & mdash; إنشاء آلة حاسبة لحساب تكلفة وضع النص على لوحة إعلانية. توصل مدير الوكالة إلى نظام تسعير ماكر لتحفيز العملاء على اختيار أسماء "رنانة" و"آمنة".

rn

قواعد حساب التكلفة:

rn
    rn
  1. التكلفة الأساسية: & nbsp; يتم إدخال تكلفة الرمز الواحد بواسطة المستخدم.
  2. rn
  3. المسافات: & nbsp; لا يتم دفع ثمنها، فهي مجانية.
  4. rn
  5. حرف العلة: & nbsp; حروف العلة (بالروسية والإنجليزية، بأي حالة) تُعتبر أكثر "جذبًا للانتباه"، وبالتالي تكون تكلفتها أعلى بنسبة 50% من التكلفة الأساسية.
  6. rn
  7. الرموز المحظورة: & nbsp; الرموز & nbsp; '@' & nbsp; و & nbsp; '#' & nbsp; محظورة الاستخدام لأسباب فنية. إذا تم العثور على واحد منها على الأقل في الاسم، يصبح الحساب مستحيلاً، ويجب على البرنامج عرض رسالة خطأ.
  8. rn
  9. الرمز المحظوظ: & nbsp; رمز علامة التعجب ( '!' ) هو جزء من عرض خاص. هو مجاني بحد ذاته، ولكن إذا كان موجودًا في الاسم، فسيتم منح خصم بنسبة 10% على التكلفة النهائية للنقش بأكمله.
  10. rn

    تحتاج إلى كتابة برنامج يطلب من المستخدم الاسم والتكلفة الأساسية للرمز، ثم يقوم بحساب وعرض السعر الإجمالي مع مراعاة جميع القواعد.

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

    اسم اللوحة الإعلانية (سلسلة نصية)
    التكلفة الأساسية لرمز واحد (رقم عشري)

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

    التكلفة الإجمالية تصل إلى رقمين بعد العلامة العشرية أو رسالة خطأ

    مثال

    إدخال

    أفضل سعر!
    100.0

    إخراج

    التكلفة النهائية: 1125.00 روبل.

    تلميح

    There will be no clue here, decide for yourself!

main.py
اختبار 1
اختبار 2
اختبار 3
اختبار 4
اختبار 5
اختبار 6
اختبار 7
اختبار 8
اختبار 9
اختبار 10
حل المطور
# Получаем название для рекламы и базовую стоимость одного символа
ad_text = input()
base_price = float(input())

# Инициализируем переменные для итоговой стоимости и флагов
total_cost = 0.0
has_forbidden_char = False
has_discount_char = False

# Список гласных букв в нижнем регистре (русские и английские)
vowels = "аеёиоуыэюяaeiou"

# Перебираем каждый символ во введенном тексте с помощью цикла for
for char in ad_text:
    # Проверяем, не является ли символ запрещенным
    if char == '@' or char == '#':
        has_forbidden_char = True  # Устанавливаем флаг, что найден запрещенный символ
        break  # Немедленно прерываем цикл, дальнейший расчет бессмысленен

    # Если символ - пробел, он бесплатный, переходим к следующему символу
    if char == ' ':
        continue

    # Если символ - восклицательный знак, он бесплатный, но дает право на скидку
    if char == '!':
        has_discount_char = True  # Устанавливаем флаг скидки
        continue

    # Рассчитываем стоимость текущего символа
    current_char_price = base_price

    # Проверяем, является ли символ гласной (приведя его к нижнему регистру)
    if char.lower() in vowels:
        current_char_price = current_char_price * 1.5  # Применяем наценку 50%

    # Добавляем стоимость текущего символа к общей стоимости
    total_cost = total_cost + current_char_price

# После цикла проверяем, был ли найден запрещенный символ
if has_forbidden_char:
    print("Ошибка: в названии содержатся запрещенные символы.")
else:
    # Если запрещенных символов не было, проверяем, нужно ли применить скидку
    if has_discount_char:
        total_cost = total_cost * 0.9  # Применяем скидку 10%

    # Выводим итоговую стоимость, отформатированную до двух знаков после запятой
    print(f"Итоговая стоимость: {total_cost:.2f} руб.")

🎉 تهانينا! 🎉

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

AD

إعلان

red-snake blue-snake green-snake

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

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

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