Руководство по Brainfuck для новичков [6] (16.08.2014)
К началу

6.7 If

В Brainfuck отсутствует условный оператор if, однако, для ветвления можно использовать особенность цикла [ ] и запускать его только один раз. Примеры в основном основаны на http://esolangs.org/wiki/brainfuck_algorithms

6.7.1 If (x != 0)

Проверка значения на ноль - самое простое для реализации условие, поскольку если число больше нуля, цикл запустится сам по себе, нам необходимо только обеспечить выход из него после первого прохода. Для этого подготовим временную ячейку с нулевым значением и перейдем на нее в конце цикла.

+>[-]<    (1)0
[+>]      2(0)
Если значение #0 не равно нулю, увеличить #0, перейти на #1

6.7.2 If (x != 1)

Для сравнения с числом необходимо вспомнить пример с поиском искомого значения в цикле. Перед началом цикла отнимем данное число из проверяемого, а затем восстановим его значение.
+>[-]<
-[++>]+
Brainfuck
comments powered by Disqus
JavaScript (13)
PHP (11)
Brainfuck (8)
adm (8)
Joomla (4)
Canvas (3)
answers (2)
API (2)
CMS (2)
Modx (2)
jQuery (1)
Ajax (1)
SQL (1)
Shell (1)
batch (1)
10-6