REPEAT
– Referencia de Lenguaje Spin
de Start y Finish. El siguiente ejemplo incluye el valor opcional Delta para incrementar de
dos en dos.
repeat Index from 0 to 8 step 2 'Repite 5 veces
byte[$7000][Index]++
$7008
REPEAT
Aquí el ciclo
respectivamente. Este código efectivamente incrementa cada dos localidades RAM (las
localidades pares ) de $7000 a $7008 y termina con
El campo Delta puede ser positivo o negativo, sin importar la naturaleza ascendente o
descendente de los valores Start y Finish, y puede incluso ajustarse con el ciclo para alcanzar
efectos interesantes.
siguiente código activa
D := 2
repeat Index from 5 to 10 step D
--D
This loop started out with
D
decrements
by one, so at the end of iteration 1,
D
= 6 and
= 0. Iteration 3 has
Index
Iteration 5 has
= 3 and
3) is outside the range of Start to Finish (5 to 10).
Ciclos Condicionales (Sintaxis 3 y 4)
REPEAT
La forma final de
tienen opciones flexibles que permiten el uso de lógica positiva o negativa y la creación de
ciclos cero-a –muchos o uno-a-muchos iteraciones. Estas dos formas de
usualmente referidas como ciclos "repite mientras" o "repite hasta".
Vamos a ver la forma
seguida inmediatamente por
debajo el opcional Statement(s). Como esta forma prueba Condition(s) al inicio de cada
iteracion, crea un ciclo cero-a-muchos; el bloque Statement(s) se ejecutara cero o mas veces
dependiendo de la Condition(s). Por ejemplo, asuma que
anteriormente:
X := 0
repeat while X < 10
byte[$7000][X] := 0
Pagina 196 · Manual Propeller v1.1
'Incrementa en par RAM de $7000 a
se ejecuta cinco veces con
Por ejemplo, asumiendo
Index
a la siguiente secuencia: 5, 6, 6, 5, 3.
Index
at 5 and a Delta (
Index
= 6 and
D
= -3. The loop then terminates because
, la sintaxis 3 y 4 son ciclos finitos con condicionales de salida y
REPEAT
descrita por la sintaxis 3. Consiste en la instrucción
WHILE
UNTIL
o
luego Condition(s) y finalmente, en las líneas
'Repite mientras X es menor que 10
'Incrementa valor RAM
Index
activado a 0, 2, 4, 6, y 8,
Index
igual a 10.
Index
D
y
son variables predefinidas, el
D
) of +2. But each iteration of the loop
Index
D
= 5 and
= +1. Iteration 2 has
D
= -1. Iteration 4 has
X
es una variable que se creo
Index
Index
D
= 5 and
= -2.
Index
plus Delta (3 + -
REPEAT
son
REPEAT