SetRecursion

Establece el número máximo de repeticiones para la recursividad y los bucles en una expresión.

Formato 

SetRecursion ( expresión ; númeroMaxDeRepeticiones )

Parámetros 

expresión: cualquier expresión, campo o constante de cálculo.

númeroMaxDeRepeticiones: el número máximo de repeticiones.

Tipo de datos devuelto 

texto, número, fecha, hora, fecha y hora, contenedor

Se origina en 

18.0

Descripción 

Por defecto, la función While y las funciones personalizadas recursivas están limitadas a 50 000 repeticiones. Esta función le permite aumentar o disminuir el límite de númeroMaxDeRepeticiones. Si se supera el númeroMaxDeRepeticiones, esta función devuelve "?"; de lo contrario, devolverá el resultado de la expresión.

Notas 

  • Las funciones personalizadas que utilizan una recursividad sin cola también están sujetas al númeroMaxDeRepeticiones especificadas por SetRecursion. Sin embargo, también terminarán y devolverán "?" si el espacio de pila disponible en la memoria es demasiado pequeño, independientemente de SetRecursion.

Ejemplo 1 

Devuelve "?" porque el bucle While intenta reiterar más del límite de cinco veces, especificado por SetRecursion.

Copiar
SetRecursion ( 
    While (  
        [ i = 0 ; out = "" ] ;
        i ≤ 10 ;  
        [ 
            i = i + 1 ; 
            out = out & $variable[ i ] & ¶ 
        ] ;
        out 
    ) ; 
5 )

Ejemplo 2 

Devuelve 100000 porque SetRecursion aumenta el límite de reiteración a 200000.

Copiar
SetRecursion ( 
    While (  
        i = 0 ; 
        i < 100000 ; 
        i = i + 1 ; 
        I 
    ) ; 
200000 )