У меня возникли проблемы с реализацией сборщика brainf *** для codegolf.se. Мне удалось загрузить строку в память, чтобы найти ее длину, напечатать строки n раз и т. Д., Но я, похоже, не загружаю в память только номера в нижнем регистре. Поэтому давайте возьмем следующий цикл, который выполняет какое-то волшебство. (Хэш метка отладка маркеры.)Эффективная реализация цикла while в brainf ***
#,#[>#<[<]<<#+#>>>[>]#,#]<[<]
Он начинается указатель 512 и записывает строку как значения ASCII для пятен после 512
Теперь, если (по какой причине) я хочу вырезать символы в нижнем регистре, это будет выглядеть так в psuedo BF.
#,#[>#<[<]<<#+#>>>[>]#do{,(takes input and assigns it)}
while(input>=96/*Go arbitrarily to the right for this implementation but
make sure that the first non-lowercase number is stored at the index*/)#
//Also be sure to zero out any temporary cells used
<[<]
Теперь мой вопрос, как я могу реализовать такой-то время цикла, а только с помощью пробелов справа 512 для хранения и очистки их позже. Для любопытных this проблема, которую я хочу решить в branf ***.