Quiero correr algo como esto:libre durante
For a = 0 To 4
For b = a To 4
For c = b To 4
Console.WriteLine(a & b & c)
Next
Next
Next
pero necesito para crear un n bucles entre sí. Así que creé este método:
'iFrom = 0; iTo = 4; Depth = 3(loop count);
Private Sub Iterate(ByVal iFrom As Integer, ByVal iTo As Integer, ByVal Depth As Integer)
For i = iFrom To iTo
If Depth - 1 > 0 Then Iterate(iFrom, iTo, Depth - 1)
'Do stuff here
Next
End Sub
¿Cuál sería la mejor manera de recuperar los valores "i" de niveles superiores? ¿Debería almacenarlos en una matriz? ¿O hay una forma completamente diferente de abordar este problema?
Debe mover el 'If' fuera del bucle, porque' Profundidad' no cambia de iteración a iteración. Este cambio lo llevaría al diseño estándar de las funciones recursivas que describí en mi respuesta. – dasblinkenlight