• 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 2. Conditions

Difficulté :

Exercice«Énigme du stockage ancien»

💻 Python

Vous & mdash; un brave aventurier se tenant devant la porte massive d'un ancien entrepôt. Il y a trois piédestaux runiques sur la porte, sur lesquels vous devez placer trois pierres magiques d'un certain poids. Les légendes disent que la porte ne s'ouvrira que si une séquence stricte de règles est respectée. Si vous violez l'ordre ou utilisez la mauvaise combinaison, le piège ou le mécanisme ne fonctionnera tout simplement pas.

Règles découvertes :

  1. Le poids total des trois pierres ( a ,   b ,   c ) doit être exactement égal à   100 . C'est la condition principale pour l'activation du mécanisme.
  2. Si le poids total est correct (égal à 100), le mécanisme vérifie la présence de pièges.   Piège   se déclenche si le poids de deux pierres quelconques   est identique . Les anciens ne toléraient pas les doublons.
  3. Si le piège ne s'est pas déclenché, une vérification supplémentaire a lieu. Le poids de chaque pierre doit être   strictement supérieur à 10 . Les pierres de poids inférieur sont considérées comme "immatures".
  4. Et la dernière règle, la plus astucieuse : parmi les trois pierres, au moins   une   doit avoir un poids   premier (nombre premier). C'est une "clé" pour le verrou.

Votre tâche & mdash; Écrire un programme qui déterminera ce qui se passera en fonction du poids des trois pierres.

Format d entrée

une ligne contenant trois nombres entiers positifs & nbsp; a , & nbsp; b & nbsp; et & nbsp; c , séparés par des espaces.

Format de sortie

selon la réalisation des conditions, le programme doit afficher l'une des trois phrases :

  • The storage is open   — Si toutes les conditions d'ouverture sont remplies.
  • trap!   — Si le piège s'est déclenché pour les mêmes pierres (à condition que leur quantité soit de 100).
  • incorrect combination — Dans tous les autres cas (la somme n'est pas égale à 100 ; ou l'une des pierres <= 10 ; ou il n'y a pas une seule pierre avec un poids premier).

Exemple

Entrée

17 40 43

Sortie

Le stockage est ouvert

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
# Функция для проверки, является ли число простым
def is_prime(n):
    if n <= 1:
        return False
    if n <= 3:
        return True
    if n % 2 == 0 or n % 3 == 0:
        return False
    i = 5
    while i * i <= n:
        if n % i == 0 or n % (i + 2) == 0:
            return False
        i += 6
    return True

# Считываем веса трех камней
a, b, c = map(int, input().split())

# 1. Проверяем главное условие: суммарный вес должен быть равен 100
if a + b + c != 100:
    print("Неверная комбинация")
else:
    # 2. Проверяем ловушку: вес любых двух камней не должен быть одинаковым
    if a == b or a == c or b == c:
        print("Ловушка!")
    else:
        # 3. Проверяем, что вес каждого камня строго больше 10
        if a <= 10 or b <= 10 or c <= 10:
            print("Неверная комбинация")
        else:
            # 4. Проверяем, что хотя бы один камень имеет простой вес
            if is_prime(a) or is_prime(b) or is_prime(c):
                print("Хранилище открыто")
            else:
                print("Неверная комбинация")

🎉 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 !