Решения задачи с Ulearn

Практика «Циклы Brainfuck»

Продолжайте работу в том же проекте brainfuck.

В классе BrainfuckLoopCommands реализуйте метод, регистрирующий следующие команды в виртуальную машину:

Символ Значение
[ (Начало цикла) Перескочить по программе вправо на соответствующий (с учетом вложенности) символ ], если текущий байт памяти равен нулю. Продолжать исполнение с этого символа.
] (Конец цикла) Перескочить по списку инструкций влево на соответствующий (с учетом вложенности) символ [, если текущий байт памяти НЕ равен нулю. Продолжать исполнение с этого символа.

Например, программа ++++++++[>++++++++<-]>+. выводит букву A (ASCII-код 65 получается увеличением 8 раз второй ячейки на 8, а потом добавлением ещё единицы).

Детали реализации инструкций восстановите по тестам в классе BrainfuckLoopCommandsTests. Сделайте так, чтобы все тесты в этом файле проходили.

Стоимость решения этой задачи всего 100 рублей, купи решения у меня 🙂

Обновлено: 20.11.2018 — 11:45

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.