시계

시계

보통

지침

날짜 없이 시간을 다루는 시계를 구현해요.

이 시계에 분을 더하거나 뺄 수 있어야 해요.

같은 시간을 나타내는 두 시계는 서로 같아야 해요.

힌트

"00:00"부터 "23:59"까지 가는 24시간 시계예요.

이 연습 문제를 완료하려면 Clock 데이터 타입을 정의하고, Eq 인스턴스를 추가하고, 다음 함수들을 구현해야 해요:

  • addDelta
  • fromHourMin
  • toString

addDelta는 시간과 분으로 표현된 기간을 Clock의 인스턴스로 표현된 주어진 시간에 더해요.

fromHourMin은 시와 분을 받아서 그 시와 분을 가진 Clock 인스턴스를 반환해요.

toString은 Clock 인스턴스를 받아서 "08:03"이나 "22:35"처럼 0으로 채워진 형식의 시계 문자열 표현을 반환해요

더미 데이터 선언과 타입 시그니처는 이미 자리를 잡고 있을 거예요. 하지만 함수를 정의하고 의미 있는 데이터 타입, newtype 또는 타입 동의어를 만드는 것은 직접 해야 해요.

타입을 시작하는 데 도움이 필요하면 다음을 살펴봐요:


출처

Erin Drummond과의 페어링 세션
GitHub에서 편집 링크가 새 창이나 탭에서 열려요
Haskell Exercism

시계 문제를 시작해 볼 준비가 됐나요?

Exercism에 가입하고 Haskell 트랙을 연습 문제 107개, 그리고 실제 사람의 멘토링과 함께 배우고 익혀 보세요. 모두 무료예요.