Aufgabenbeschreibung:
Zeichnen Sie in ASCII-Kunst einen Würfel in einer ungefähren Schrankprojektion.
Monospaced fonts
Häufig sind die Zeichen doppelt so hoch wie breit. Da die Eingabe die Länge der vertikalen Linien (ohne die Ecken) ist, werden horizontale Linien mit doppelt so vielen Zeichen gezeichnet, sodass das resultierende Bild in etwa ein Würfel ist. Die zurückgehenden Linien werden auf die Hälfte der Länge gezeichnet, wie dies durch eine Kabinettprojektion vorgeschrieben ist.
Die Ecken des Würfels werden durch +
horizontale Linien -
, vertikale Linien |
und diagonale Linien dargestellt /
.
Zusammenfassen: Dann sei die Eingabe n
- Eine horizontale Kante des Würfels wird mit gezeichnet
-
und besteht aus 2 n Zeichen. - Eine vertikale Kante des Würfels wird mit n Zeichen gezeichnet
|
und besteht aus n Zeichen. - Eine diagonale Kante des Würfels ist mit
/
und besteht aus n / 2 Zeichen. - Würfelecken sind mit gezeichnet
+
. Ecken werden nicht wie oben beschrieben für die Länge einer Kante gezählt (siehe auch Beispiele unten).
Eingang:
Die Eingabe bei der Standardeingabe ist eine positive gerade Zahl n (2 ≤ n ≤ 30), die die Länge der vertikalen Linien des Würfels angibt. Es folgt ein einzelner Zeilenumbruch.
Ausgabe:
Die Ausgabe ist ein Würfel für die Standardausgabe gemäß den obigen Regeln. Das nachfolgende Leerzeichen in den Zeilen wird ignoriert.
Beispieleingang 1:
2
Beispielausgabe 1:
+----+
/ /|
+----+ |
| | +
| |/
+----+
Beispieleingang 2:
4
Beispielausgabe 2:
+--------+
/ /|
/ / |
+--------+ |
| | |
| | +
| | /
| |/
+--------+
ETA: Ich habe jetzt die kürzeste Lösung akzeptiert. Ich werde die akzeptierte Antwort aktualisieren, wenn eine kürzere kommt.
Da fragten einige Leute, wie lange die Einsendungen unserer Teilnehmer waren:
227 - Python
240 - Perl
310 - C
315 - C
326 - VB.NET
459 - C
Sowie unsere eigenen Lösungen (nicht mit den anderen eingestuft):
140 - Golfscript
172 - Ruby
183 - PowerShell