• 1
    Entrée et sortie
    • Tâches
  • 2
    Conditions
    • Tâches
  • 3
    Boucle for
    • Tâches
  • 4
    Chaînes
    • Tâches
  • 5
    Boucle while
    • Tâches
  • 6
    Listes
    • Tâches
  • 7
    Tableaux 2D
    • Tâches
  • 8
    Dictionnaires
    • Tâches
  • 9
    Ensembles
    • Tâches
  • 10
    Fonctions et récursion
    • Tâches
  • к

Leçon 3. FOR cycle

Difficulté :

Exercice«Filtre de nombres»

💻 Python

Imaginez que vous travaillez dans le département de cybersécurité. Une panne est survenue sur l'un des serveurs critiques, et en conséquence, une partie des données a été endommagée. Le plus gros problème — Un identifiant numérique unique d'un objet secret a été corrompu. Il s'agit désormais d'un ensemble chaotique de lettres, de chiffres et de symboles. Heureusement, on sait que les chiffres eux-mêmes n'ont pas changé et que leur ordre a été préservé.

rn

Votre tâche — Écrire un programme capable de « nettoyer » la ligne endommagée et de restaurer le code numérique d'origine. Le programme doit prendre une ligne contenant les données endommagées et en extraire tous les chiffres, en préservant leur ordre initial.

rn

Exigences d'implémentation :

Pour résoudre, utilisez uniquement les entrées/sorties, la boucle   for   et l'opérateur conditionnel   if . Vous n'avez pas besoin d'ouvrir des fichiers ni d'utiliser des fonctions complexes de traitement de chaînes.

Format d entrée

ligne de données endommagée contenant des nombres, des lettres et tout autre caractère (chaîne, chaîne).

Format de sortie

un code numérique restauré composé uniquement des nombres trouvés dans la ligne d'origine dans le même ordre (ligne, chaîne). S'il n'y avait pas de nombres dans la ligne d'origine, le programme doit afficher une ligne vide.

Exemple

Entrée

ERW3423T!@#gfdg5567

Sortie

34235567

Indice

There will be no clue here, decide for yourself!

main.py
Test 1
Test 2
Test 3
Test 4
Test 5
Test 6
Test 7
Test 8
Test 9
Test 10
Solution du développeur
# Формат кода, с комментариями к строкам для объяснения

# Получаем на вход одну строку с поврежденными данными от пользователя
damaged_data = input()

# Создаем пустую строку, в которую будем собирать только найденные цифры
recovered_code = ""

# Запускаем цикл for, который перебирает каждый символ во входной строке
for symbol in damaged_data:
    # Внутри цикла используем условие if для проверки, является ли текущий символ цифрой.
    # Метод isdigit() возвращает True, если все символы в строке являются цифрами, и False в противном случае.
    # Так как мы проверяем по одному символу, он сработает как нам нужно.
    if symbol.isdigit():
        # Если символ является цифрой, мы добавляем (конкатенируем) его в конец нашей строки с результатом
        recovered_code = recovered_code + symbol

# После того как цикл завершится, в переменной recovered_code будет строка, состоящая только из цифр.
# Выводим итоговую восстановленную строку на экран.
print(recovered_code)

🎉 Félicitations ! 🎉

Tu as brillamment résolu la tâche ! C était difficile, mais tu as trouvé la bonne solution. Tu es encore plus proche de maîtriser la programmation ! Continue ainsi.

AD

Publicité

red-snake blue-snake green-snake

Exécution de votre code...

Assistant IA

Bonjour ! Je suis ton assistant de programmation. Pose moi toutes tes questions sur Python — je peux t expliquer les fonctions, les méthodes et t aider avec la tâche en cours !