Imaginez l'horloge de 24 heures suivante qui peut être contrôlée par les touches fléchées:
╔══╗ ┌──┐
║00║:│00│
╚══╝ └──┘
HH mm
Appuyez deux fois sur la flèche vers le haut ( ↑↑
) pour augmenter l'entrée d'heure actuellement focalisée:
╔══╗ ┌──┐
║02║:│00│
╚══╝ └──┘
HH mm
Appuyez sur la flèche droite ( →
) pour focaliser l'autre entrée.
┌──┐ ╔══╗
│02│:║00║
└──┘ ╚══╝
HH mm
Appuyez trois fois sur la flèche vers le bas ( ↓↓↓
) pour diminuer cette entrée.
┌──┐ ╔══╗
│02│:║57║
└──┘ ╚══╝
HH mm
En bref:
- La flèche vers le haut (
↑
) augmentera l'entrée actuellement active. - La flèche vers le bas (
↓
) diminue l'entrée active. - La flèche droite (
→
) déplace le focus vers l'entrée droite. - La flèche gauche (
←
) déplace le focus vers l'entrée gauche. - Les mouvements de haut en bas boucleront comme prévu pour une entrée de temps.
- Les mouvements gauche et droit ne tournent pas autour.
Le défi
L'horloge démarre à 00:00
avec l'entrée heure active (voir premier schéma). Étant donné une liste de commandes d'entrée, affichez l'heure résultante au HH:mm
format.
L'entrée peut être une chaîne ou une liste (ou votre équivalent de langue), où les différentes directions d'entrée peuvent être l'une des options ci-dessous:
↑↓←→
udlr
^v<>
- la touche fléchée réelle appuie si votre programme a une interface graphique
Des échappatoires standard s'appliquent.
Cas de test
↑↑→↓↓↓ = 02:57
↓→↑←↑→↓ = 00:00
↓→→↓ = 23:59
←←←←→↑ = 00:01
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓→↓ = 23:59
0123
) rendrait le défi beaucoup plus facile dans certaines langues tout en ne bénéficiant pas à d'autres.