Tallying adalah sistem penghitungan sederhana yang bekerja di basis 5. Ada berbagai sistem penghitungan yang berbeda yang digunakan di seluruh dunia, tetapi sistem penghitungan yang digunakan di sebagian besar negara berbahasa Inggris mungkin merupakan yang paling sederhana - unit penghitungan dengan menandai garis vertikal, lalu untuk setiap tanda ke-5 letakkan garis horizontal melalui koleksi sebelumnya yang terdiri dari empat. Ini mengelompokkan tanda penghitungan dalam kelompok 5 (dan membuatnya lebih mudah untuk dihitung dengan cepat).
Anda akan menulis sebuah program yang menampilkan tanda penghitungan hingga nilai yang diberikan. Tapi, menghitung hanya di base 5 itu membosankan! Karena itu, program Anda juga harus dapat menampilkan penghitungan di pangkalan yang berbeda.
Memasukkan
Input akan berupa satu atau dua nilai integer non-negatif yang dipisahkan oleh koma (misalnya 9
atau 8,4
). Angka pertama adalah nilai yang harus ditampilkan oleh penghitungan. Nilai kedua adalah basis penghitungan. Jika nilai kedua tidak diberikan, gunakan basis 5 .
Keluaran
Keluarannya adalah nilai yang dimasukkan sebagai tanda penghitungan ASCII. Berikut adalah beberapa contoh yang dapat Anda uji terhadap program Anda - output Anda harus sama persis!
Masukan: 12
atau12,5
| | | | | | | | | |
-+-+-+-+- -+-+-+-+- | |
| | | | | | | | | |
Memasukkan: 7,3
| | | | |
-+-+- -+-+- |
| | | | |
Memasukkan: 4,2
| |
-+- -+-
| |
Input: 6,1
atau 6,10
(perhatikan spasi utama)
| | | | | |
| | | | | |
| | | | | |
Perhatikan juga bahwa basis 1 dimaksudkan tidak konsisten - hanya garis vertikal yang harus digunakan.
Jika salah satu dari nilai yang dimasukkan adalah 0, seharusnya tidak ada output apa pun (dan program Anda harus berakhir dengan anggun).
Aturan
- Ini adalah kode-golf , sehingga implementasi terpendek yang benar (dalam byte) menang.
- Input / output dapat dalam media yang sesuai (mis. Stdin / stdout, file ...).
- Input dapat berupa beberapa argumen baris perintah atau dipisahkan dengan spasi, dll. Jika lebih cocok untuk bahasa target Anda.
- Trailing newlines diizinkan dalam output. Ruang tambahan tidak. Aturan ini hanya berlaku ketika ada output (yaitu tidak ketika nilai yang dimasukkan adalah 0).
- Kode Anda harus default ke basis 5 ketika tidak ada basis dimasukkan.
-+-
akan mewakili dua, karena ada garis vertikal dan skor horizontal melaluinya. Basis 1 hanya akan memiliki garis vertikal. @AndoDaan diamandemen.
--- --- --- --- --- ---
begitu. Untuk konsistensi dengan pangkalan lain, Anda harus melakukan pukulan horizontal melalui b-1
garis vertikal. Jika dimaksudkan tidak konsisten, Anda harus menyatakannya secara eksplisit.
6,1
lebih mirip-+- -+- -+- -+- -+- -+-
?