🎉 ¡Felicidades! 🎉
¡Has resuelto la tarea brillantemente! Era un reto difícil, pero encontraste la solución correcta. ¡Estás un paso más cerca de dominar la programación! Sigue así, cada etapa superada te hace más fuerte.
ProgerLib Python para todos
Eres & mdash; un valiente aventurero, y durante tus andanzas, encontraste un cofre misterioso en la mazmorra de un castillo antiguo. El cofre está cerrado con una cerradura criptográfica mágica que requiere la entrada de tres números secretos. La leyenda dibujada en la pared dice que la cerradura se abrirá si & nbsp; al menos una & nbsp; de dos condiciones se cumple:
rnrecuerda que un número primo & mdash; es un número natural mayor que 1, que se divide sin resto solo por 1 y por sí mismo (por ejemplo, 2, 3, 5, 7, 11).
rntu tarea & mdash; es escribir un programa que te ayude a verificar rápidamente las combinaciones de números. El programa debe determinar, a partir de tres números enteros ingresados, si el castillo se abrirá.
Tres enteros (Integer), cada uno se introduce desde una nueva línea. Estos son números secretos para el castillo.
Línea (cadena) con el resultado: "The lock is open" o "Castle locked".
3
5
7
El castillo está abierto
# Запрашиваем у пользователя три целых числа
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("Замок заперт")
🎉 ¡Felicidades! 🎉
¡Has resuelto la tarea brillantemente! Era un reto difícil, pero encontraste la solución correcta. ¡Estás un paso más cerca de dominar la programación! Sigue así, cada etapa superada te hace más fuerte.
AD
Publicidad
Ejecutando tu código...