Ваше завдання - взяти такий внесок (програма Hello World):
++++++++[>++++[>++>+++>+++>+<<<<-]>+>+>->>+[<]<-]>>.>---.+++++++..+++.>>.<-.<.+++.------.--------.>>+.>++.
І виведіть підказку (яка буде "> "
):
>
Після цього користувач може ввести що завгодно підказку. Ваш простий налагоджувач повинен мати такі команди:
S
- крок- Виведіть поточне місце (див.
L
) Після кроку. S(a positive integer)
- зробіть стільки пробілів
- Виведіть поточне місце (див.
L
- Місцезнаходження- Термін "розташування" завжди позначає місце, де ви знаходитесь у програмі (тобто вказівник інструкції).
Відформатовано так:
v +++++++[>+++++++<-]>.
Це означає, що поточне розташування програми знаходиться на третьому
+
.
G(an integer)
- йти до- Це означає, що продовжуйте крокувати, поки не дістанетесь до цього місця. Якщо ви дійшли до кінця програми, і ви там не потрапили, просто вийдіть з програми.
- Від’ємне ціле число означає, що з кінця багато символів. Так, це означає, що
-0
відрізняється від0
і-1
є другим за останнім символом. - Не виводити нічого для цієї команди.
D
- дампський масив- Відформатовано як
1, 2, 3, 4, 5
- Якщо масив є
1, 2, 3, 0, 0, 0, 0, 0, ...
, тільки вихід1, 2, 3
. D(a positive integer) (a positive integer)
- скидання всіх елементів масиву між цими двома позиціями (включно)
- Відформатовано як
(a positive integer)
- вивести елемент, який знаходиться в цьому місці масивуP
- виведіть індекс вказівника BF (річ, яку ви змінюєте за допомогою>
і<
).
Коли програма вимагає введення, покажіть підказку "I> "
. (Ви можете вводити один символ одночасно.)
Коли він щось виводить, покажіть "O> " + (the output)
. Кілька виходів між командами повинні бути з'єднані один з одним (тобто ви не можете зробити > G-0 O> H O> e O> l O> l O> o ...
, це повинно бути > G-0 O> Hello, World!
).
Виведіть "Готово" та вийдіть, як тільки досягнете кінця програми.
Проба зразка:
++++++++[>++++[>++>+++>+++>+<<<<-]>+>+>->>+[<]<-]>>.>---.+++++++..+++.>>.<-.<.+++.------.--------.>>+.>++.
> 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
Зразок запуску, що показує перехід циклів та P
інструкцію (обчислює 3*2+1
)
+++[>++<-]>+
> S3
3
> L
v
+++[>++<-]>+
> S3
6
> L
v
+++[>++<-]>+
> P
1
> S3
9
> L
v
+++[>++<-]>+
> S
3
> L
v
+++[>++<-]>+
> D
2, 2
>
Проба з показом вводу / виводу
>+[>,---------------------------------]<[<]>[>.]
> G37
I> H
I> e
I> l
I> l
I> o
I> !
> D
0, 39, 68, 75, 75, 78
> G-0
O> 'DKKN
Done
Це код-гольф , тому найкоротший код виграє.