Ringkasan
Golf kode bagus. Pai bagus . Ketika Anda menggabungkan keduanya, hanya hal-hal baik yang bisa terjadi.
Spesifikasi
Dalam tantangan ini, Anda akan mengelola toko kue. Pengguna akan dapat input lima perintah yang berbeda: list, count, buy, sell, dan exit. Berikut spesifikasi untuk masing-masing:
listCetak daftar semua kue yang dimiliki, dan berapa banyak. Pisahkan dengan
|dan pad dengan spasi di kedua sisi.|s harus disejajarkan. Jumlah pie mungkin negatif (itu berarti Anda berhutang kepada seseorang:(). Sebagai contoh:| apple | 500 | | blueberry | 2 | | cherry | -30 |
count [type]Cetak berapa banyak
{{type}}pai yang ada. Cetak "Tidak ada{{type}}kue!" jika tidak ada.{{type}}akan selalu cocok dengan regex\w+(yaitu, itu akan selalu menjadi satu kata). Sebagai contoh, jika saya memiliki jumlah kue yang ditunjukkan dalam daftar contoh di atas, maka> count apple 500 > count peach There is no peach pie!
buy [n] [type]Tambahkan
{{n}}ke hitungan{{type}}pai, dan cetak. Buat{{type}}pai jika tidak ada.{{n}}akan selalu cocok dengan regex[0-9]+(yaitu, itu akan selalu berupa angka). Berikut contoh lain (dengan inventaris pie yang sama dengan contoh sebelumnya):> count blueberry 2 > buy 8 blueberry 10
sell [n] [type]Kurangi
{{n}}dari jumlah{{type}}pai, dan cetaklah. Buat{{type}}pai jika tidak ada. Pai bisa negatif (oh tidak, itu berarti Anda berutang pai pada seseorang!).> sell 15 blueberry -5 > buy 5 blueberry 0
exitCetak "Toko pai telah ditutup!" dan keluar dari program.
> exit The pie store has closed!
Klarifikasi lebih lanjut
- Jika fungsi yang tidak ada disebut (kata pertama), maka cetak "Itu bukan perintah yang valid."
- Jika fungsi yang ada dipanggil dengan argumen yang tidak valid (kata-kata setelah kata pertama), bagaimana program Anda berperilaku tidak masalah. "Argumen tidak valid" mencakup terlalu banyak argumen, terlalu sedikit argumen,
{{n}}tidak menjadi angka, dll. - Pai bagus.
- Input Anda harus dibedakan dari output Anda. Jika Anda menjalankan program pada baris perintah / terminal / shell / hal berbasis teks lainnya, Anda harus mengawali input dengan tanda "
> "(" lebih besar dari "dan spasi) atau beberapa hal awalan input shell lainnya. - Pai bagus.
Jika semua klarifikasi ini tidak cukup baik, berikut adalah beberapa contoh keluaran:
> list > buy 10 apple 10 > sell 10 blueberry -10 > list | apple | 10 | | blueberry | -10 | > count apple 10 > count peach There is no peach pie! > exit The pie store has closed!Jika Anda membeli menjual kue / dan jumlah bersih menjadi
0, Anda dapat baik tetap dilistatau tidak, dan Anda dapat baik kembali0atauThere is no {{type}} pie!ketika Andacountitu.- Ini adalah kode-golf ; kode menang paling pendek.
- Apakah saya menyebutkan bahwa pai itu enak?
buy 1 appledan sell 1 apple. Dan apakah itu akan berlaku untuk count applekembali, 0bukan There is no apple pie!?
