Operadores lógicos, parte 3
Parte de la sección Fundamentos del Journey de GDScript de Coddy. Lección 24 de 92.
Puedes combinar varias condiciones en una sola expresión. Para comprobar si un número es positivo y par:
var number := 6
var is_positive := number > 0
var is_even := number % 2 == 0
var result := is_positive and is_even # trueTambién puedes escribir las condiciones directamente, sin las variables adicionales:
var result := number > 0 and number % 2 == 0Con or, basta con una condición verdadera. -4 es negativo, así que esto es true aunque -4 no sea impar:
var number := -4
var negative_or_odd := number < 0 or number % 2 != 0 # trueGDScript evalúa primero not, después and y luego or. Los paréntesis cambian el orden:
var level := 3
var has_key := false
var has_map := true
print(level >= 5 and (has_key or has_map)) # false
print(level >= 5 and has_key or has_map) # truePara comprobar que un valor está dentro de un rango, escribe dos comparaciones unidas por and: level >= 1 and level <= 10. GDScript indica que la forma matemática 1 <= level <= 10 es un error.
Desafío
FácilUn jugador quiere explorar una mazmorra. Las variables level, has_key y has_map ya están declaradas. Declara tres más:
can_enter:leveles como mínimo5y el jugador tiene una llave o un mapacan_find_treasure: el jugador tiene una llave y un mapa yleveles como mínimo10is_lost: el jugador no tiene llave ni mapa, oleveles menor que3
Usa and, or y not. Con los valores dados, la salida es:
Can enter: true
Can find treasure: false
Is lost: falsePruébalo tú mismo
extends Node
func _ready():
var level := 7
var has_key := true
var has_map := false
# Declara can_enter, can_find_treasure e is_lost a continuación
# No cambies las líneas siguientes
print("Can enter: ", can_enter)
print("Can find treasure: ", can_find_treasure)
print("Is lost: ", is_lost)
Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Fundamentos
4Operadores, parte 1
Operadores aritméticosDivisión enteraOperador móduloAtajos aritméticosRepaso: matemáticas básicasOperadores de comparación7Entrada y salida básicas
SalidaSalida con variablesFormato de cadenasEntradaConversión de tipoRepaso: hasta 120Repaso: verdadero o falso10Funciones
Declarar una funciónArgumentosRetornoTipos de retornoRepaso: función SigmaRepaso: función de validaciónValores predeterminados5Operadores, parte 2
Operadores lógicos, parte 1Operadores lógicos, parte 2Repaso: lógica simpleOperadores lógicos, parte 3Operador ternario8Calculadora para dividir la cuenta
Mensaje de bienvenidaCómo obtener datos3Variables, parte 2
Declaración de tiposInferencia de tiposConstantesRepaso: inicializar variablesConversión de tipos9Bucles
Bucle forBucle whileBreakContinueRepaso - FactorialLa función rangeBucle anidadoRepaso - Entrada dinámicaPractica por tu cuenta: Compilador de GDScript online