Curso de Raku / Esenciales / Tipos de datos posicionales / Ejercicios / Semáforos

Solución: Semáforos

La idea de la solución es ‘circular el índice’ del array con los cuatro estados de los semáforos:

my @lights = <yellow red yellow green>;

Durante los primeros segundos, el número de segundos desde el inicio se puede usar directamente como un índice en el array. Cuando excede 3, puedes circularlo al comienzo del array con el operador módulo %. La longitud del array es @lights.elems, pero cuando se usa como un operando de %, no es necesario llamar al método elems, ya que el nombre del array se convertirá en un número, y esa conversión está diseñada para devolver el número de elementos.

Código

Aquí está la solución:

my @lights = <yellow red yellow green>;

say @lights[51 % @lights];
say @lights[102 % @lights];
say @lights[305 % @lights];

🦋 Encuentra el programa en el archivo traffic-lights.raku.

Salida

Ejecuta el programa. Además, prueba otros valores en el programa.

$ raku exercises/positionals/traffic-lights.raku
green
yellow
red

Variables tipadas / Alomorfos   |   Tipos de datos asociativos

Esta página está traducida automáticamente con ChatGPT 4o. Texto original en inglés.

Traducciones de esta página: EnglishDeutschEspañolItalianoLatviešuNederlandsБългарскиРусскийУкраїнська