Compte enrere

El compte enrere és una estratègia molt utilitzada: en l'inici d'una cursa, en el llançament d'un coet …

Comptador 3, 2, 1 ...


Aquest programa utilitza el botó A per fer un compte enrere 3, 2, 1 abans de mostrar una imatge. El botó B reinicia el comptador.
Recupera aquest projecte a MakeCode


El mateix efecte es pot aconseguir amb l'estructura iterativa que executa les instruccions que conté  mentre  es compleixi la condició definida:

Buida la pantalla


Aquest comptador marca el compte enrere buidant periòdicament, línia a línia, la pantalla.
Comprova-ho clicant el botó A del simulador:

Recupera aquest projecte a MakeCode

1. Encesa de tots els LEDs de la pantalla



El bloc d'iteració  repetir  permet definir l'encesa de tota una línia de la pantalla (en aquest cas, la superior), repetint una única instrucció des que el valor de la coordenada X és 0 fins que sigui 4.

El nom de la variable index es pot canviar (botó dret / renombrar la variable)



Per encendre la resta de línies només cal utilitzar un altre bloc d'iteració per les coordenades Y, i ficar una iteració dins l'altra.

2. Apagada dels LEDs línia a línia

Un cop definida l'encesa inicial, els leds s'han d'anar apagant, línia a línia. A l'exemple, a intervals d'1 segon:



3. L'animació final

Per aconseguir l'animació final del compte enrere només cal invertir l'estat dels LEDs un nombre imparell de vegades (en acabar l'animació quedaran tots encesos, preparats per tornar a apagar-se seqüencialment quan tornem a prémer el botó).
Necessites ajuda?

Desenvolupem-ho


Fem que la pantalla es buidi de baix a dalt. Comprova-ho clicant el botó B del simulador:

Recupera aquest projecte a MakeCode

La definició de les coordenades Y de les línies en aquest cas no pot ser directa, perquè el bloc  para  només permet definir valors creixents a partir de 0.
Amb el bloc  map   podem establir una relació matemàtica entre l'interval que permet definir el bloc iteratiu (0 a 4) i el de funcionament pretès (4 a 0):

Seguim: Racionaltzem el codi amb funcions