Tracks
/
F#
F#
/
Ejercicios
/
Diamante
Diamante

Diamante

Difícil

Instrucciones

La kata del diamante recibe una letra y la muestra en forma de diamante. Dada una letra, imprime un diamante que empieza con '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. (Puede ser 0).
  • El diamante es simétrico horizontalmente.
  • El diamante es simétrico verticalmente.
  • El diamante tiene forma cuadrada (el ancho es igual a la altura).
  • Las letras forman la figura de un 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 esto puede ser complicado si no codificas 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 ventana o pestaña nueva
Editar en GitHub El enlace se abre en una ventana o una pestaña nuevas
F# Exercism

¿Todo listo para empezar Diamante?

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