Jika Anda melemparkan telur ASCII ke arah tertentu, Anda akan mendapatkan percikan ASCII dengan ukuran n . Ini "dimulai" dengan satu o
(kuning telur), dan berlanjut ke arah tertentu dengan "garis" yang terdiri dari 2 hingga n *
. Ini *
dipisahkan oleh satu "ruang", dan o
dan semua "garis" *
dipisahkan oleh "garis" dari "ruang".
Arah percikan dapat berupa salah satu dari delapan arah o
, misalnya:
1 2 3
4 o 5
6 7 8
Berikut adalah contoh percikan ASCII ukuran 4 dalam arah 5
, 2
dan 3
masing - masing. Di sebelah kiri adalah ASCII percikan yang sebenarnya, dan di sebelah kanan adalah gambar percikan sama tetapi dengan "garis" dari "ruang" diganti dengan yang sebenarnya "garis" (yaitu -
atau \
atau |
tergantung pada arah) hanya untuk memperjelas apa yang dimaksud oleh "garis" ruang.
Size 4, direction 5
* | | |*
* | |*|
* * |*| |*
o * o| |*|
* * |*| |*
* | |*|
* | | |*
Size 4, direction 2
* * * * * * * *
-------
* * * * * *
-------
* * * *
-------
o o
Size 4, direction 3
* *
\
* * *\*
\ \
* * * *\*\*
\ \ \
o * * * o\*\*\*
Tantangan
Diberikan n ≥ 1 dan salah satu dari 8 arah yang mungkin, tulis fungsi atau program yang menampilkan percikan ASCII dengan ukuran n dalam arah yang diberikan.
Masukan dan keluaran
Format input yang konsisten dan masuk akal diizinkan. Anda tidak perlu memetakan arah ke bilangan bulat 1 hingga 8 dengan cara yang sama seperti yang saya lakukan - jika ada cara lain untuk menentukan arah lebih mudah, silakan. Tetapi katakan apa yang Anda lakukan jika tidak jelas.
Output akan terdiri dari o
,, *
spasi (U + 0020) dan baris baru (U + 000A) yang menghasilkan percikan ASCII. Leading, trailing, jika tidak spasi putih diizinkan pada baris apa pun.
Aturan
Ini adalah kode-golf . Aturan standar berlaku.
Lebih banyak contoh
Size 1, any direction
o
Size 3, direction 6
* * o
* *
*
Size 5, direction 7
o
* *
* * *
* * * *
* * * * *