Orologio

Orologio

Medio

Istruzioni

Implementa un orologio che gestisce orari senza date.

Dovresti poter aggiungere e sottrarre minuti.

Due orologi che rappresentano lo stesso orario devono essere uguali tra loro.

Suggerimenti

È un orologio a 24 ore che va da «00:00» a «23:59».

Per completare questo esercizio devi definire il tipo di dato Clock, aggiungere un'istanza di Eq e implementare le funzioni:

  • addDelta
  • fromHourMin
  • toString

addDelta aggiunge una durata, espressa in ore e minuti, a un orario dato, rappresentato da un'istanza di Clock.

fromHourMin prende un'ora e un minuto e restituisce un'istanza di Clock con quell'ora e quei minuti.

toString prende un'istanza di Clock e restituisce una rappresentazione dell'orologio sotto forma di stringa, in un formato con zeri iniziali come «08:03» o «22:35»

Troverai già pronti una dichiarazione di dato fittizia e delle firme di tipo, ma sta a te definire le funzioni e creare un tipo di dato, un newtype o un sinonimo di tipo significativo.

Se hai bisogno di aiuto per iniziare con i tipi, dai un'occhiata a:


Fonte

Sessione di pair programming con Erin Drummond
Modifica tramite GitHub Il link si apre in una nuova finestra o scheda
Haskell Exercism

Vuoi iniziare Orologio?

Iscriviti a Exercism per imparare e padroneggiare Haskell con 107 esercizi e il mentoring di persone reali, tutto gratis.