Menu
CoddyTech

Wiederholung – Verschachteltes Array summieren

Teil des Abschnitts Logik & Ablaufsteuerung der GDScript-Journey von Coddy. Lektion 59 von 78.

challenge icon

Aufgabe

Einfach

Schreibe eine rekursive Funktion namens sum_nested, die ein Array nested_array entgegennimmt. Seine Elemente sind ganze Zahlen oder andere Arrays, die bei beliebiger Verschachtelungstiefe weitere Zahlen und Arrays enthalten können.

Die Funktion gibt die Summe aller darin enthaltenen Zahlen auf jeder Ebene zurück.

Um die beiden Arten von Elementen zu unterscheiden, verwende is Array: element is Array ist true, wenn element ein Array ist.

Zum Beispiel gibt sum_nested([1, [2, 3], [4, [5, 6]], 7]) den Wert 28 zurück. Die Summe eines leeren Arrays ist 0.

Die Tests rufen sum_nested() selbst auf. Rufe die Funktion nicht auf und gib nichts aus.

Probier es selbst

func sum_nested(nested_array: Array):
	var total := 0
	for element in nested_array:
		if element is Array:
			# Addiere die Summe dieses inneren Arrays zu total
			pass
		else:
			# Addiere die Zahl zu total
			pass
	return total

Alle Lektionen in Logik & Ablaufsteuerung

Übe selbstständig: Online-GDScript-Compiler