Wenn Sie ein ASCII-Ei in eine bestimmte Richtung werfen, erhalten Sie einen ASCII-Splat der Größe n . Es "beginnt" mit eins o
(dem Eigelb) und setzt sich in einer bestimmten Richtung mit "Linien" fort, die aus 2 bis n bestehen *
. Die *
's sind durch ein "Leerzeichen" getrennt, und die o
und alle "Linien" von *
' s sind durch "Linien" von "Leerzeichen" getrennt.
Die Richtung des Splats kann eine von acht Richtungen sein o
, zum Beispiel aus:
1 2 3
4 o 5
6 7 8
Hier sind Beispiele für ASCII splats der Größe 4 in Richtungen 5
, 2
und 3
jeweils. Auf der linken Seite befindet sich der eigentliche ASCII-Splat, und auf der rechten Seite befindet sich derselbe Splat, wobei jedoch die "Linien" des "Leerzeichens" durch die tatsächlichen "Linien" (dh -
oder \
oder |
je nach Richtung) ersetzt werden, um zu verdeutlichen, was mit a gemeint ist "Linie" des Raumes.
Size 4, direction 5
* | | |*
* | |*|
* * |*| |*
o * o| |*|
* * |*| |*
* | |*|
* | | |*
Size 4, direction 2
* * * * * * * *
-------
* * * * * *
-------
* * * *
-------
o o
Size 4, direction 3
* *
\
* * *\*
\ \
* * * *\*\*
\ \ \
o * * * o\*\*\*
Herausforderung
Wenn n ≥ 1 und eine der 8 möglichen Richtungen gegeben ist, schreiben Sie eine Funktion oder ein Programm, das den ASCII-Splat der Größe n in der gegebenen Richtung ausgibt .
Ein- und Ausgabe
Jedes konsistente, vernünftige Eingabeformat ist zulässig. Sie müssen den Ganzzahlen 1 bis 8 nicht wie ich Richtungen zuordnen - wenn eine andere Art der Richtungsangabe einfacher ist, fahren Sie fort. Aber sagen Sie, was Sie getan haben, wenn es nicht klar ist.
Die Ausgabe besteht aus o
, *
, Räume (U + 0020) und neue Zeilen (U + 000A), die die ASCII Splat erzeugen. Führende, nachfolgende, ansonsten zusätzliche Leerzeichen sind in jeder Zeile zulässig.
Regeln
Das ist Code-Golf . Es gelten Standardregeln.
Mehr Beispiele
Size 1, any direction
o
Size 3, direction 6
* * o
* *
*
Size 5, direction 7
o
* *
* * *
* * * *
* * * * *