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: orangerange(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]Sfida
FacileIl 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: incluso4(indice 1) è minore di 50: incluso99(indice 2): non incluso36(indice 3) e34(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
Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Fondamenti
4Operatori Parte 1
Operatori aritmeticiDivisione interaOperatore moduloScorciatoie aritmeticheRipasso - Matematica sempliceOperatori di confronto7Input/Output di base
OutputOutput con variabiliFormattazione delle stringheInputConversione di tipoRiepilogo - Fino a 120Riepilogo - Vero o falso10Funzioni
Dichiarare una funzioneArgomentiRestituzioneTipi di ritornoRiepilogo - Funzione SigmaRiepilogo - Funzione di convalidaValori predefiniti13Iterare sugli array
Iterare sugli elementiIterare con gli indiciIterare sulle stringhe, parte 1Iterare sulle stringhe, parte 25Operatori - Parte 2
Operatori logici - Parte 1Operatori logici - Parte 2Riepilogo - Logica sempliceOperatori logici - Parte 3Operatore ternario8Calcolatore per dividere il conto
Messaggio di benvenutoInserimento dei dati11FizzBuzz con una variante
Panoramica del giocoLa funzione FizzBuzz3Variabili Parte 2
Dichiarazione del tipoInferenza del tipoCostantiRipasso - Inizializzare le variabiliConversione di tipo6Strutture decisionali
Istruzione ifIf - ElseRipasso - Calcolatrice sempliceIf - Else annidatiIstruzione match9Cicli
Ciclo forCiclo whilebreakcontinueRipasso - FattorialeLa funzione rangeCiclo annidatoRipasso - Input dinamicoEsercitati da solo: Compilatore GDScript online