Tantangan Anda adalah mengambil input seperti ini (program Hello World):
++++++++[>++++[>++>+++>+++>+<<<<-]>+>+>->>+[<]<-]>>.>---.+++++++..+++.>>.<-.<.+++.------.--------.>>+.>++.
Dan menampilkan prompt (yang akan menjadi "> "
):
>
Pengguna kemudian dapat memasukkan apa pun saat diminta. Debugger sederhana Anda harus memiliki perintah-perintah ini:
S
- langkah- Keluarkan lokasi saat ini (lihat
L
) setelah melangkah. S(a positive integer)
- Langkah yang banyak ruang
- Keluarkan lokasi saat ini (lihat
L
- lokasi- Istilah "lokasi" selalu merujuk ke tempat Anda berada dalam program (yaitu, penunjuk instruksi).
Diformat seperti ini:
v +++++++[>+++++++<-]>.
Ini berarti bahwa lokasi program saat ini adalah yang ketiga
+
.
G(an integer)
- pergi ke- Ini berarti terus melangkah sampai Anda tiba di lokasi itu. Jika Anda mencapai akhir program dan belum sampai di sana, cukup keluar dari program.
- Bilangan bulat negatif berarti banyak karakter dari akhir. Ya, ini berarti
-0
berbeda dari0
, dan-1
merupakan karakter kedua hingga terakhir. - Jangan tampilkan apapun untuk perintah ini.
D
- dump array- Seperti diformat
1, 2, 3, 4, 5
- Jika arraynya
1, 2, 3, 0, 0, 0, 0, 0, ...
, hanya output1, 2, 3
. D(a positive integer) (a positive integer)
- buang semua item array antara dua posisi (inklusif)
- Seperti diformat
(a positive integer)
- Keluarkan item saat ini pada posisi array ituP
- Keluarkan indeks dari penunjuk BF (hal yang Anda ubah dengan>
dan<
).
Ketika program meminta input, tunjukkan prompt "I> "
. (Anda dapat memasukkan satu karakter pada satu waktu.)
Saat mengeluarkan sesuatu, tunjukkan "O> " + (the output)
. Banyak output antara perintah harus dirantai bersama (yaitu Anda tidak bisa melakukannya > G-0 O> H O> e O> l O> l O> o ...
, harus > G-0 O> Hello, World!
).
Keluarkan "Selesai" dan keluar setelah Anda mencapai akhir program.
Contoh dijalankan:
++++++++[>++++[>++>+++>+++>+<<<<-]>+>+>->>+[<]<-]>>.>---.+++++++..+++.>>.<-.<.+++.------.--------.>>+.>++.
> S
1
> S
2
> S2
4
> S0
4
> L
v
++++++++[>++++[>++>+++>+++>+<<<<-]>+>+>->>+[<]<-]>>.>---.+++++++..+++.>>.<-.<.+++.------.--------.>>+.>++.
> D
4
> 0
4
> D10 15
0, 0, 0, 0, 0, 0
> G-0
O> Hello, World!
Done
Contoh menjalankan menunjukkan langkah-langkah melalui loop dan P
instruksi (menghitung 3*2+1
)
+++[>++<-]>+
> S3
3
> L
v
+++[>++<-]>+
> S3
6
> L
v
+++[>++<-]>+
> P
1
> S3
9
> L
v
+++[>++<-]>+
> S
3
> L
v
+++[>++<-]>+
> D
2, 2
>
Contoh lari menunjukkan I / O
>+[>,---------------------------------]<[<]>[>.]
> G37
I> H
I> e
I> l
I> l
I> o
I> !
> D
0, 39, 68, 75, 75, 78
> G-0
O> 'DKKN
Done
Ini kode-golf , jadi kode terpendek akan menang.