Menu
CoddyTech

Ripasso - Somma di un array annidato

Fa parte della sezione Logica e flusso del percorso GDScript di Coddy. Lezione 59 di 78.

challenge icon

Sfida

Facile

Scrivi una funzione ricorsiva chiamata sum_nested che accetta un array nested_array. I suoi elementi sono numeri interi o altri array, che possono contenere altri numeri e array, a qualsiasi livello di profondità.

La funzione restituisce la somma di tutti i numeri contenuti, a ogni livello.

Per distinguere i due tipi di elementi, usa is Array: element is Array è true quando element è un array.

Per esempio, sum_nested([1, [2, 3], [4, [5, 6]], 7]) restituisce 28. La somma di un array vuoto è 0.

I test chiamano direttamente sum_nested(). Non chiamarla e non stampare nulla.

Provalo tu

func sum_nested(nested_array: Array):
	var total := 0
	for element in nested_array:
		if element is Array:
			# Aggiungi la somma di questo array interno a total
			pass
		else:
			# Aggiungi il numero a total
			pass
	return total

Tutte le lezioni di Logica e flusso

Esercitati da solo: Compilatore GDScript online