Tracks
/
Elixir
Elixir
/
Ejercicios
/
Tablero de ajedrez
Tablero de ajedrez

Tablero de ajedrez

Ejercicio de aprendizaje

Introducción

Rangos

Los rangos representan una secuencia de uno o varios números enteros consecutivos. Se crean al unir dos números enteros con ...

1..5

Los rangos pueden ser ascendentes o descendentes. Siempre incluyen el primer y el último valor.

Un rango implementa el protocolo Enumerable, lo que significa que puedes usar las funciones del módulo Enum para trabajar con rangos.

Instrucciones

Si te apasiona el ajedrez, te gustaría escribir tu propia versión del juego. Sí, puede que ya haya muchas implementaciones de ajedrez disponibles en línea, pero ¡la tuya será única!

Pero antes de dar rienda suelta a tu imaginación, tienes que ocuparte de lo básico. Empecemos por generar el tablero.

Cada casilla del tablero de ajedrez se identifica con un par de letra y número. Las columnas verticales de casillas se etiquetan de la A a la H, y las filas horizontales se numeran del 1 al 8.

1. Define el rango de filas

Implementa la función rank_range/0. Debe devolver un rango de enteros, del 1 al 8.

Chessboard.rank_range()

2. Define el rango de columnas

Implementa la función file_range/0. Debe devolver un rango de enteros, desde el punto de código de la letra A mayúscula hasta el punto de código de la letra H mayúscula.

Chessboard.file_range()

3. Transforma el rango de filas en una lista de filas

Implementa la función ranks/0. Debe devolver una lista de enteros, del 1 al 8. No escribas la lista a mano; genérala a partir del rango que devuelve la función rank_range/0.

Chessboard.ranks()
# => [1, 2, 3, 4, 5, 6, 7, 8]

4. Transforma el rango de columnas en una lista de columnas

Implementa la función files/0. Debe devolver una lista de letras (strings), de "A" a "H". No escribas la lista a mano; genérala a partir del rango que devuelve la función file_range/0.

Chessboard.files()
# => ["A", "B", "C", "D", "E", "F", "G", "H"]
Editar en GitHub El enlace se abre en una ventana o una pestaña nuevas
Elixir Exercism

¿Todo listo para empezar Tablero de ajedrez?

Regístrate en Exercism para aprender y dominar Elixir con 58 conceptos168 ejercicios y mentoría humana real, todo gratis.