Horloge

Horloge

Moyen

Instructions

Implémente une horloge qui gère des heures sans date.

Tu dois pouvoir y ajouter des minutes et en soustraire.

Deux horloges qui représentent la même heure doivent être égales entre elles.

Indices

C'est une horloge sur 24 heures qui va de "00:00" à "23:59".

Pour résoudre cet exercice, tu dois définir le type de données Clock, ajouter une instance Eq et implémenter les fonctions :

  • addDelta
  • fromHourMin
  • toString

addDelta ajoute une durée, exprimée en heures et en minutes, à une heure donnée, représentée par une instance de Clock.

fromHourMin prend une heure et une minute, et renvoie une instance de Clock avec ces heures et minutes.

toString prend une instance de Clock et renvoie une représentation sous forme de chaîne de caractères de l'horloge, au format complété par des zéros, comme "08:03" ou "22:35".

Tu trouveras déjà une déclaration de données factice et les signatures de type en place, mais c'est à toi de définir les fonctions et de créer un type de données, un newtype ou un synonyme de type qui ait du sens.

Si tu as besoin d'aide pour démarrer avec les types, jette un œil à :


Source

Session en binôme avec Erin Drummond
Modifie via GitHub Le lien s'ouvre dans une nouvelle fenêtre ou un nouvel onglet
Haskell Exercism

Prêt à commencer Horloge ?

Inscris-toi sur Exercism pour apprendre et maîtriser Haskell avec 107 exercices, et un vrai mentorat humain, le tout gratuitement.