• 1
    Entrada e saída
    • Tarefas
  • 2
    Condições
    • Tarefas
  • 3
    Loop for
    • Tarefas
  • 4
    Strings
    • Tarefas
  • 5
    Loop while
    • Tarefas
  • 6
    Listas
    • Tarefas
  • 7
    Matrizes 2D
    • Tarefas
  • 8
    Dicionários
    • Tarefas
  • 9
    Conjuntos
    • Tarefas
  • 10
    Funções e recursão
    • Tarefas
  • к

Lição 2. Conditions

Dificuldade:

Tarefa«Castelo Criptográfico»

💻 Python

Você & mdash; Um bravo aventureiro, e durante suas andanças, encontrou um baú misterioso na masmorra de um castelo antigo. O baú está trancado com uma fechadura criptográfica mágica que exige a inserção de três números secretos. A lenda desenhada na parede diz que a fechadura abrirá se & nbsp; pelo menos uma & nbsp; das duas condições for atendida:

rn
  • Os três números inseridos na fechadura formam uma & nbsp; sequência estritamente crescente & nbsp; (ou seja, cada número seguinte é maior que o anterior). rn
  • todos os três & nbsp; números são & nbsp; primos . rn

    Lembre-se que um número primo & mdash; É um número natural maior que 1, que é divisível sem resto apenas por 1 e por ele mesmo (por exemplo, 2, 3, 5, 7, 11).

    rn

    Sua tarefa & mdash; Escrever um programa que ajude a verificar rapidamente as combinações de números. O programa deve determinar, a partir de três números inteiros inseridos, se o castelo abrirá.

    Formato de entrada

    Três números inteiros (Integer), cada um é inserido em uma nova linha. Estes são os números secretos do castelo.

    Formato de saída

    Linha (String) com o resultado: "A fechadura está aberta" ou "Fechadura trancada".

    Exemplo

    Entrada

    3
    5
    7

    Saída

    O castelo está aberto

    Dica

    There will be no clue here, decide for yourself!

  • main.py
    Teste 1
    Teste 2
    Teste 3
    Teste 4
    Teste 5
    Teste 6
    Teste 7
    Teste 8
    Teste 9
    Teste 10
    Solução do desenvolvedor
    # Запрашиваем у пользователя три целых числа
    a = int(input())
    b = int(input())
    c = int(input())
    
    # Проверка первого условия: строго возрастающая последовательность
    # Эта переменная будет True, если a < b и b < c, иначе False
    is_increasing = a < b < c
    
    # Проверка второго условия: все три числа являются простыми
    # Создаем флаги для каждого числа, по умолчанию считаем их простыми
    a_is_prime = True
    b_is_prime = True
    c_is_prime = True
    
    # Проверяем число 'a' на простоту
    if a <= 1:
        # Числа меньше или равные 1 не являются простыми
        a_is_prime = False
    else:
        # Перебираем все возможные делители от 2 до a-1
        for i in range(2, a):
            # Если нашелся делитель без остатка, число не простое
            if a % i == 0:
                a_is_prime = False
                break # Прерываем цикл, так как дальше проверять нет смысла
    
    # Проверяем число 'b' на простоту (логика аналогична)
    if b <= 1:
        b_is_prime = False
    else:
        for i in range(2, b):
            if b % i == 0:
                b_is_prime = False
                break
    
    # Проверяем число 'c' на простоту (логика аналогична)
    if c <= 1:
        c_is_prime = False
    else:
        for i in range(2, c):
            if c % i == 0:
                c_is_prime = False
                break
    
    # Итоговый флаг для второго условия: будет True, только если все три флага True
    all_are_prime = a_is_prime and b_is_prime and c_is_prime
    
    #  Финальное решение 
    # Замок откроется, если выполнено хотя бы одно из двух условий (оператор or)
    if is_increasing or all_are_prime:
        print("Замок открыт")
    else:
        print("Замок заперт")

    🎉 Parabéns! 🎉

    Você resolveu a tarefa brilhantemente! Foi difícil, mas você encontrou a solução certa. Você está um passo mais perto de dominar a programação! Continue assim.

    AD

    Publicidade

    red-snake blue-snake green-snake

    Executando seu código...

    Assistente de IA

    Olá! Sou seu assistente de programação. Faça qualquer pergunta sobre Python — posso explicar funções, métodos e ajudá-lo com a tarefa atual!