Ich kann eine große if/else
Bedingung für jede 30 Minuten haben, aber ich suche mehr Mathe und Unicode-basierte Lösung.
Hier sind Uhr Emojis::. Wenn Sie keine ordnungsgemäße Renderunterstützung haben, können Sie diese unten (sie sind nicht in derselben Reihenfolge angeordnet und können anders aussehen als die angezeigten) oder im Unicode-Diagramm auf Seite 4 anzeigen. Sie entsprechen den Unicode-Codepunkten U + 1F550 (CLOCK FACE ONE OCLOCK) bis U + 1F567 (CLOCK FACE TWELVE-THIRTY).
Ihre Herausforderung besteht darin, ein Programm zu schreiben, das an STDOUT das Zifferblatt ausgibt, das der aktuellen Systemzeit am nächsten kommt (AM und PM sollten gleich behandelt werden). Wenn zum Beispiel die Zeit t
[5:15 <t <5:45) ist, würden Sie das 5:30 Emoji 🕠 anzeigen.
Das ist Code-Golf, also gewinnt der kürzeste Code in Bytes. Möglicherweise möchten Sie eine Möglichkeit angeben, die Zeit zum Testen des Codes auf einfache Weise festzulegen.
Edge-Testfälle
Time Output Written
----------------------
11:48 🕛 12:00
3:15 🕞 3:30
9:45 🕙 10:00