Tracks
/
PowerShell
PowerShell
/
Ejercicios
/
Uniendo las piezas
Uniendo las piezas

Uniendo las piezas

Intermedia

Introducción

Tu mejor amigo ha empezado a coleccionar rompecabezas y quiere armar un catálogo detallado de su colección, donde registre información como el número total de piezas, la cantidad de filas y columnas, el número de piezas del borde y del interior, la relación de aspecto y el formato del rompecabezas. Incluso con tus poderes combinados, resolver un solo rompecabezas de mil piezas toma varias horas, y luego todavía tienes que contar las filas y las columnas y calcular a mano los números que faltan. Los rompecabezas aún más grandes, de miles de piezas, ahora sí que parecen intimidantes. «¡Tiene que haber una forma mejor!», exclamas, y te sientas frente a tu computadora para resolver el problema.

Instrucciones

Dada información parcial sobre un rompecabezas, agrega las piezas que faltan.

Si la información no es suficiente para completar los detalles, o si las partes proporcionadas se contradicen, se debe notificar al usuario.

La información completa sobre el rompecabezas contiene las siguientes partes:

  • pieces: Número total de piezas
  • border: Número de piezas del borde
  • inside: Número de piezas interiores (que no son del borde)
  • rows: Número de filas
  • columns: Número de columnas
  • aspectRatio: Relación de aspecto entre columnas y filas
  • format: Formato del rompecabezas, que puede ser portrait, square o landscape

Para este ejercicio, puedes asumir que las piezas son cuadradas, de modo que el formato se puede derivar de la relación de aspecto:

  • Si la relación de aspecto es menor que 1, es portrait
  • Si es igual a 1, es square
  • Si es mayor que 1, es landscape

Tres ejemplos

Vertical

Un rompecabezas vertical de 6 piezas, todas las cuales son piezas del borde y ninguna es una pieza interior. Tiene 2 columnas y 3 filas. La relación de aspecto es 0.666666... (2/3).

Un rompecabezas de 2 por 3

Cuadrado

Un rompecabezas cuadrado de 9 piezas, todas las cuales son piezas del borde excepto la del centro, que es una pieza interior. Tiene 3 columnas y 3 filas. La relación de aspecto es 1.0 (3/3).

Un rompecabezas de 3 por 3

Horizontal

Un rompecabezas horizontal de 12 piezas, 10 de las cuales son piezas del borde y 2 son piezas interiores. Tiene 4 columnas y 3 filas. La relación de aspecto es 1.333333... (4/3).

Un rompecabezas de 4 por 3

Editar en GitHub El enlace se abre en una ventana o una pestaña nuevas
PowerShell Exercism

¿Todo listo para empezar Uniendo las piezas?

Regístrate en Exercism para aprender y dominar PowerShell con 136 ejercicios y mentoría humana real, todo gratis.