In der Fernsehserie Knight Rider aus den 80er Jahren wurde ein intelligentes, selbstbewusstes Auto namens KITT vorgestellt. Ein charakteristischer Aspekt des Autos war eine an der Vorderseite angebrachte Scannerleiste, die es KITT ermöglichte, zu "sehen" (und die den Fans einer anderen früheren Fernsehserie verdächtig bekannt vorkam ).
Der Scanner hatte acht Lichter, wie auf diesem Bild zu sehen:
Die Lichter "bewegten" sich wie in diesem animierten Bild gezeigt .
Ihre Aufgabe ist es, wie Sie bereits vermutet haben, die Scannerleiste mit den Moving Lights in ASCII-Kunst nachzubilden.
Die Herausforderung
Geben Sie bei einer bestimmten Ganzzahl t
den Status der Scannerleiste zu diesem Zeitpunkt wie folgt aus:
- Der Scanner besteht aus acht Lichtern.
- Zu jedem Zeitpunkt ist eine der Leuchten aktiv und wird als angezeigt
#
. Die Lichter, die zu bestimmten Zeiten aktiv warent-1
undt-2
jetzt abgeblendet sind, werden als angezeigt+
. es sei denn, sie stimmen mit der aktuell aktiven überein. Die restlichen Lichter sind aus und werden als angezeigt-
. - Das aktive Licht bewegt sich von links nach rechts und dann von rechts nach links.
Die genaue Ausgabe für jedes t
ist unten aufgeführt.
0 --> #++----- % The leftmost light is active, and it just came from the right.
% The two neighbouring lights are dimmed
1 --> +#------ % The active light has bounced to the right, and it is covering
% one of the two lights that should be dimmed. So there is only
% one dimmed light
2 --> ++#----- % The active light has moved one more step to the right, and the
% two trailing dimmed lights are visible
3 --> -++#----
7 --> -----++#
8 --> ------#+ % The active light has bounced to the left
9 --> -----#++
10 --> ----#++-
13 --> -#++----
14 --> #++----- % Same as 0
15 --> +#------ % Same as 1
Bei negativen Werten wird t
der Zyklus einfach verlängert:
-1 --> -#++---- % Same as 13
-2 --> --#++--- % Same as 12
Zusätzliche Regeln
Sie können ein Programm oder eine Funktion schreiben.
Die Ausgabe kann abschließende Leerzeichen und eine führende Newline enthalten.
Kürzester Code in Bytes gewinnt.