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

درس 4. Lines

الصعوبة:

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

مسألة«سلامة البيانات»

💻 Python

أنت تعمل في شركة تقنية معلومات تعمل على تطوير نظام جديد للرسائل الآمنة "SecureChat". أحد متطلبات الأمان الرئيسية هو إخفاء أي معلومات رقمية في السجلات والتقارير النظامية لمنع تسرب البيانات السرية، مثل أرقام الهواتف، رموز PIN، الطلبات أو المعلومات المالية.

مهمتك — كتابة وحدة صغيرة ولكنها مهمة لهذا النظام. يجب أن تأخذ هذه الوحدة سطرًا واحدًا من النص (على سبيل المثال، تسجيل من ملف السجل) وتستبدل جميع الأحرف الرقمية فيه (من 0 إلى 9) بنجوم (*). علاوة على ذلك، جميع الرموز الأخرى — الحروف، علامات الترقيم، المسافات، إلخ — يجب أن تبقى دون تغيير.

لحل هذه المشكلة، يُسمح لك باستخدام فقط التركيبات الأساسية للغة: إدخال وإخراج البيانات، حلقة   for   عبر الأحرف، العامل الشرطي   if-else   للتحقق من الحرف، وعمليات السلاسل (الدمج). يُحظر استخدام الدوال المدمجة لاستبدال الأحرف (على سبيل المثال،   .replace()) أو التعبيرات المنتظمة، لأن الهدف من المهمة هو — التدرب تحديدًا على الحلقات والشروط.

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

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

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

سطر تم تغييره، حيث يتم استبدال جميع الأرقام بنجوم، ويتم حفظ باقي الأحرف في أماكنها (سلسلة نصية).

مثال

إدخال

التطبيق رقم 791-345 من العميل ذو المعرف 880215. يجب معالجته بشكل عاجل حتى الساعة 18:00.

إخراج

التطبيق رقم #***-*** من العميل ذو المعرف ****** ۰ معالجة عاجلة حتى **: **.

تلميح

There will be no clue here, decide for yourself!

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

# Создаем пустую строку, в которую будем записывать результат.
# Мы не можем изменять исходную строку напрямую, поэтому создаем новую.
result_string = ""

# Начинаем цикл, который перебирает каждый символ (char) во входной строке (input_string).
for char in input_string:
    # Проверяем, является ли текущий символ цифрой, используя метод isdigit().
    # Этот метод возвращает True, если все символы в строке являются цифрами, и False в противном случае.
    # Так как мы проверяем по одному символу, это работает идеально.
    if char.isdigit():
        # Если это цифра, добавляем в результируючую строку звездочку.
        result_string += "*"
    else:
        # Если это любой другой символ (буква, пробел, знак препинания и т.д.),
        # добавляем его в результирующую строку без изменений.
        result_string += char

# После того как цикл завершился и все символы были обработаны,
# выводим на экран итоговую строку с замаскированными данными.
print(result_string)

🎉 تهانينا! 🎉

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

AD

إعلان

red-snake blue-snake green-snake

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

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

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