Seu melhor amigo começou a colecionar quebra-cabeças e quer montar um catálogo detalhado da coleção, registrando informações como o número total de peças, o número de linhas e colunas, a quantidade de peças de borda e de peças internas, a proporção e o formato do quebra-cabeça. Mesmo com seus poderes combinados, você leva várias horas para montar um único quebra-cabeça de mil peças, e depois ainda precisa contar as linhas e as colunas e calcular os números restantes manualmente. Os quebra-cabeças ainda maiores, com milhares de peças, agora parecem bem assustadores. "Tem que haver um jeito melhor!", você exclama, e se senta em frente ao computador para resolver o problema.
Dadas informações parciais sobre um quebra-cabeça, adicione as peças que faltam.
Se as informações forem insuficientes para completar os detalhes, ou se as partes fornecidas estiverem em contradição, o usuário deve ser notificado.
As informações completas sobre o quebra-cabeça contêm as seguintes partes:
pieces: Número total de peçasborder: Número de peças de bordainside: Número de peças internas (que não são de borda)rows: Número de linhascolumns: Número de colunasaspectRatio: Proporção entre colunas e linhasformat: Formato do quebra-cabeça, que pode ser portrait, square ou landscape
Neste exercício, você pode assumir que as peças são quadradas, de modo que o formato pode ser derivado da proporção:
portrait
square
landscape
Um quebra-cabeça no formato retrato com 6 peças, sendo todas elas peças de borda e nenhuma delas uma peça interna. Tem 2 colunas e 3 linhas. A proporção é 0,666666... (2/3).
Um quebra-cabeça quadrado com 9 peças, sendo todas elas peças de borda exceto a do centro, que é uma peça interna. Tem 3 colunas e 3 linhas. A proporção é 1,0 (3/3).
Um quebra-cabeça no formato paisagem com 12 peças, das quais 10 são peças de borda e 2 são peças internas. Tem 4 colunas e 3 linhas. A proporção é 1,333333... (4/3).
Crie sua conta no Exercism para aprender e dominar Wren com 117 exercícios e mentoria humana de verdade, tudo de graça.