木炭、71バイト
NβA‹β³²τA§o^τεA§XVτφA§XvτθF³«P↑⁵|_»↑⁵←I←×_⁵‖O→↙↙←←ε↙←^↖↓ε↓→φθφθφ¿⁼β³¹‖←
注:このコードは、文字列のインデックス作成が壊れているため、投稿時の最新のコミットでは機能しません。ただし、このバージョンでは10月25日から動作するはずです。また、現在Try It Onlineにあるバージョンでも正常に動作します。
説明
木炭は、ASCIIアート用に設計された言語です。出力はキャンバスに置かれ、プログラムの最後に印刷されます。
セットアップ
入力を取得し、顔文字を計算します。
Nβ Input number into beta
A‹β³²τ Assign beta<32 to tau for easy reuse
A§o^τε Assign appropriate eye character (selected via indexing into "o^") to epsilon
A§XVτφ Assign outside and middle mouth character to phi
A§Xvτθ Assign other mouth character to theta
カボチャを描く
F³« » Do this three times:
P↑⁵ Draw a 5-character line upward (using | by default); don't move the cursor
|_ Draw that string, rightward
このループの後、
| | |
| | |
| | |
| | |
|_|_|_
次:
↑⁵ Draw a 5-character line upward
←I Draw the stem leftward
←×_⁵ Draw 5 underscores leftward
‖O→ Reflect the canvas rightward, overlapping in the middle
結果:
_____I_____
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
|_|_|_|_|_|_|
顔を描く
右向きの顔を描き、必要に応じて後で変更します。
↙↙←←ε Move to the correct spot and draw the right eye (our right, pumpkin's left)
↙←^ Move to the correct spot and draw the nose
↖↓ε Move to the correct spot and draw the left eye
↓→φθφθφ Move to the correct spot and draw the mouth with alternating characters
結果(入力用31
):
_____I_____
| | | | | | |
| | |^| |^| |
| | | |^| | |
| | |VvVvV| |
|_|_|_|_|_|_|
ハロウィーンかどうかを反映します。
¿⁼β³¹ If beta equals 31:
‖← Reflect canvas leftward
最終出力:
_____I_____
| | | | | | |
| |^| |^| | |
| | |^| | | |
| |VvVvV| | |
|_|_|_|_|_|_|
x^n>30
トリックは最初私を混乱させましたが、何が起こっているかを考え出したとき、私は恥知らずにそれを盗んで答えを改善しました。補償として、とにかくあなたに賛成票を差し上げています。