Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Python, не работают циклы в самописном компиляторе BrainFuck

afdwqarfwq efqwefeq23 Ученик (117), на голосовании 1 месяц назад
 def BrainFuck(code): 
memory = [0] * 100
location = 0
for i in range(len(code)):
command = code[i]
if command == ">":
location += 1
elif command == "<":
location -= 1
elif command == "+":
memory[location] += 1
elif command == "-":
memory[location] -= 1
elif command == ".":
print(chr(memory[location]), end="")
elif command == ",":
memory[i] = int(input())
elif command == "[":
if memory[location] == 0:
cycle = 1
while cycle > 0:
i += 1
if code[i] == "[":
cycle += 1
elif code[i] == "]":
cycle -= 1
elif command == "]":
if memory[location] != 0:
cycle = 1
while cycle > 0:
i -= 1
if code[i] == "]":
cycle += 1
elif code[i] == "[":
cycle -= 1
если ввести код
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.>++++++++++++++++++++++++++++++++.>+++[<<.>.>-] 
то в моем компиляторе получится "i i " хотя должно быть "i i i i "
как исправить?
Голосование за лучший ответ
Piskoed Daynovich Мастер (1278) 2 месяца назад
Ну точно не в brainfuck, умныйебать(этл перевод)?
Похожие вопросы