Rutas
/
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 uniendo 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

Como aficionado al ajedrez, te gustaría escribir tu propia versión del juego. Sí, puede que ya haya muchas implementaciones de ajedrez disponibles en internet, pero la tuya será única.

Pero antes de dejar volar tu imaginación, tienes que ocuparte de lo básico. Empecemos por generar el tablero.

Cada casilla del tablero de ajedrez se identifica por un par letra-número. Las columnas verticales de casillas están etiquetadas de la A a la H. Las filas horizontales de casillas están numeradas del 1 al 8.

1. Define el rango de filas

Implementa la función rank_range/0. Debería devolver un rango de números enteros, del 1 al 8.

Chessboard.rank_range()

2. Define el rango de columnas

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

Chessboard.file_range()

3. Transforma el rango de filas en un array de filas

Implementa la función ranks/0. Debería devolver un array de números enteros, del 1 al 8. No escribas el array a mano; genéralo 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 un array de columnas

Implementa la función files/0. Debería devolver un array de letras (strings), de la «A» a la «H». No escribas el array a mano; genéralo 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 pestaña nueva
Elixir Exercism

¿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.