Hello i made this program which interprets brainf*** But i don't understand why it doesn't ends....and also it doesn't print anything
import sys cell=[0] * 30000 code_pointer=0 cell_pointer=0 close_brace_pos=0 open_brace_pos=0 bf=raw_input("Input bf program:") while (code_pointer<len(bf)): c=bf[code_pointer] if c=='.': sys.stdout.write(cell[cell_pointer]) code_pointer+=1 elif c==',': cell[cell_pointer]=sys.stdin.read(1); code_pointer+=1 elif c=='>': cell_pointer+=1 code_pointer+=1 elif c=='<': cell_pointer-=1 code_pointer+=1 elif c=='+': cell[cell_pointer]+=1 code_pointer+=1 elif c=='-': cell[cell_pointer]-=1 code_pointer+=1 elif c=='[': if cell[cell_pointer]>0: code_pointer+=1 else: code_pointer=close_brace_pos+1 elif c==']': close_brace_pos=code_pointer code_pointer=open_brace_pos else: code_pointer+=1 For those of you who don't understand brainfuck its a very simple 8 instruction language http://en.wikipedia.org/wiki/Brainfuck
_______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: http://mail.python.org/mailman/listinfo/tutor