Recorrer con índices
Parte de la sección Fundamentos del Journey de GDScript de Coddy. Lección 70 de 92.
Un bucle sobre los elementos te da cada valor, pero no su posición. Cuando también necesitas el índice, recorre los índices con range() y lee cada elemento con corchetes:
var fruits := ["apple", "banana", "orange"]
for i in range(fruits.size()):
print("Index %d: %s" % [i, fruits[i]])Index 0: apple
Index 1: banana
Index 2: orangerange(fruits.size()) da 0, 1 y 2: exactamente los índices del arreglo. En cada iteración, i es el índice y fruits[i] el elemento.
El índice también es lo que te permite cambiar el arreglo dentro de un bucle. Asignar a la variable del bucle de for price in prices: cambia solo esa variable, mientras que asignar a prices[i] cambia el arreglo:
var prices := [2, 5]
for i in range(prices.size()):
prices[i] *= 2
print(prices)[4, 10]Desafío
FácilEl programa lee una línea de números enteros separados por comas en el arreglo numbers (ya escrito).
Imprime un arreglo con los índices de los números que son menores que 50 o divisibles por 5. Para la entrada 80,4,99,36,34:
80(índice 0) es divisible por 5: se incluye4(índice 1) es menor que 50: se incluye99(índice 2): no se incluye36(índice 3) y34(índice 4) son menores que 50: se incluyen
La salida es:
[0, 1, 3, 4]Pruébalo tú mismo
extends Node
func _ready():
var parts := OS.read_string_from_stdin().split(",")
var numbers: Array[int] = []
for part in parts:
numbers.append(int(part))
# Escribe tu código a continuación
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 predeterminados13Recorrer arreglos
Recorrer elementosRecorrer con índicesRecorrer cadenas de texto, parte 1Recorrer cadenas de texto, parte 25Operadores, 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