Il tuo migliore amico ha iniziato a collezionare puzzle e vuole costruire un catalogo dettagliato della sua collezione: registrare informazioni come il numero totale di pezzi, il numero di righe e colonne, il numero di pezzi del bordo e di pezzi interni, le proporzioni e il formato del puzzle. Anche unendo le forze, servono diverse ore per risolvere un puzzle da mille pezzi, e poi devi comunque contare righe e colonne e calcolare a mano i numeri rimanenti. I puzzle ancora più grandi, con migliaia di pezzi, ora sembrano davvero scoraggianti. «Deve esserci un modo migliore!» esclami, e ti siedi davanti al computer per risolvere il problema.
Date alcune informazioni parziali su un puzzle, aggiungi i pezzi mancanti.
Se le informazioni non sono sufficienti a completare i dettagli, o se le parti fornite sono in contraddizione, l'utente deve essere avvisato.
Le informazioni complete sul puzzle comprendono le seguenti parti:
pieces: numero totale di pezziborder: numero di pezzi del bordoinside: numero di pezzi interni (non del bordo)rows: numero di righecolumns: numero di colonneaspectRatio: rapporto d'aspetto tra colonne e righeformat: formato del puzzle, che può essere portrait, square o landscape
Per questo esercizio, puoi assumere che i pezzi siano quadrati, così che il formato possa essere ricavato dal rapporto d'aspetto:
portrait
square
landscape
Un puzzle verticale con 6 pezzi, tutti pezzi del bordo e nessuno interno. Ha 2 colonne e 3 righe. Il rapporto d'aspetto è 0.666666... (2/3).
Un puzzle quadrato con 9 pezzi, tutti pezzi del bordo tranne quello al centro, che è un pezzo interno. Ha 3 colonne e 3 righe. Il rapporto d'aspetto è 1.0 (3/3).
Un puzzle orizzontale con 12 pezzi, 10 dei quali sono pezzi del bordo e 2 sono pezzi interni. Ha 4 colonne e 3 righe. Il rapporto d'aspetto è 1.333333... (4/3).
Iscriviti a Exercism per imparare e padroneggiare Wren con 117 esercizi e il mentoring di persone reali, tutto gratis.