Rutas
/
F#
F#
/
Ejercicios
/
Diamante
Diamante

Diamante

Difícil

Instrucciones

El kata del diamante recibe como entrada una letra y la representa con forma de diamante. Dada una letra, imprime un diamante que empieza por la 'A', con la letra proporcionada en el punto más ancho.

Requisitos

  • La primera fila contiene una 'A'.
  • La última fila contiene una 'A'.
  • Todas las filas, excepto la primera y la última, tienen exactamente dos letras idénticas.
  • Todas las filas tienen tantos espacios finales como espacios iniciales. (Esto puede ser 0).
  • El diamante es simétrico horizontalmente.
  • El diamante es simétrico verticalmente.
  • El diamante tiene forma cuadrada (la anchura es igual a la altura).
  • Las letras forman una forma de diamante.
  • La mitad superior tiene las letras en orden ascendente.
  • La mitad inferior tiene las letras en orden descendente.
  • Las cuatro esquinas (que contienen los espacios) son triángulos.

Ejemplos

En los siguientes ejemplos, los espacios se indican con el carácter ·.

Diamante para la letra 'A':

A

Diamante para la letra 'C':

··A··
·B·B·
C···C
·B·B·
··A··

Diamante para la letra 'E':

····A····
···B·B···
··C···C··
·D·····D·
E·······E
·D·····D·
··C···C··
···B·B···
····A····

Pistas

  • Probar este ejercicio puede resultar complicado si no es codificando directamente un montón de entradas y salidas. Las pruebas basadas en propiedades son otra forma de enfocar las pruebas que te permite probar este tipo de algoritmo con más facilidad.

Fuente

Seb RoseEl enlace se abre en una nueva ventana o pestaña
Editar en GitHub El enlace se abre en una ventana o pestaña nueva
F# Exercism

¿Listo para empezar Diamante?

Regístrate en Exercism para aprender y dominar F# con 18 conceptos148 ejercicios y mentoría humana real, todo gratis.