If - Else anidado
Parte de la sección Fundamentos del Journey de GDScript de Coddy. Lección 29 de 92.
Una instrucción if puede ir dentro de otro bloque if o else. Esto es un anidado if. Empieza con un if/else simple:
var age := 15
var group := ""
if age >= 18:
group = "Adult"
else:
group = "Minor"Ahora divide a los menores en dos grupos con un if/else anidado dentro del bloque else:
var age := 15
var group := ""
if age >= 18:
group = "Adult"
else:
if age >= 13:
group = "Teenager"
else:
group = "Child"15 no es al menos 18, así que se ejecuta el else externo. Dentro de él, 15 >= 13 es true, así que group contiene "Teenager".
Un if anidado también puede ir dentro del bloque if:
var age := 25
var can_rent_car := false
if age >= 18:
if age >= 21:
can_rent_car = trueEl if interno se ejecuta solo cuando se ejecuta el bloque externo en el que está. Cada nivel de anidamiento añade una tabulación.
Desafío
FácilDecide qué películas puede ver un espectador. Las variables age y with_parent se leen por ti en las dos primeras líneas (no las cambies).
Usa un if/else anidado para establecer message:
- Si
agees18o más:"You can watch any movie" - De lo contrario, si
with_parentestrue:"You can watch PG-13 movies" - De lo contrario:
"You can only watch G-rated movies"
with_parent es un bool, así que compruébalo directamente: if with_parent:. Escribe los tres casos: las pruebas usan distintas edades, con y sin un padre. Por ejemplo, para la edad 17 con un padre, la salida es:
You can watch PG-13 moviesPruébalo tú mismo
extends Node
func _ready():
var age := int(OS.read_string_from_stdin()) # No cambies esta línea
var with_parent := OS.read_string_from_stdin() == "true" # No cambies esta línea
var message := ""
# Escribe tu código if - else anidado a continuación
# No cambies la línea de abajo
print(message)
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