Menu
CoddyTech

Iterare con gli indici

Fa parte della sezione Fondamenti del percorso GDScript di Coddy. Lezione 70 di 92.

Un ciclo sugli elementi ti dà ogni valore, ma non la sua posizione. Quando ti serve anche l'indice, esegui un ciclo sugli indici con range() e leggi ogni elemento usando le parentesi quadre:

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: orange

range(fruits.size()) restituisce 0, 1 e 2: esattamente gli indici dell'array. A ogni iterazione, i è l'indice e fruits[i] l'elemento.

L'indice è anche ciò che ti permette di modificare l'array all'interno di un ciclo. Assegnare un valore alla variabile del ciclo di for price in prices: modifica solo quella variabile, mentre assegnare un valore a prices[i] modifica l'array:

var prices := [2, 5]
for i in range(prices.size()):
	prices[i] *= 2
print(prices)
[4, 10]
challenge icon

Sfida

Facile

Il programma legge una riga di numeri interi separati da virgole nell'array numbers (già scritto).

Stampa un array con gli indici dei numeri minori di 50 oppure divisibili per 5. Per l'input 80,4,99,36,34:

  • 80 (indice 0) è divisibile per 5: incluso
  • 4 (indice 1) è minore di 50: incluso
  • 99 (indice 2): non incluso
  • 36 (indice 3) e 34 (indice 4) sono minori di 50: inclusi

L'output è:

[0, 1, 3, 4]

Provalo tu

extends Node

func _ready():
	var parts := OS.read_string_from_stdin().split(",")
	var numbers: Array[int] = []
	for part in parts:
		numbers.append(int(part))
	# Scrivi il tuo codice qui sotto
quiz iconMettiti alla prova

Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.

Tutte le lezioni di Fondamenti

Esercitati da solo: Compilatore GDScript online