compilador_rpc.py 1023 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. from automatas import M_mostrar, M_declarar_enteros
  2. print("Interprete de lenguaje rpc")
  3. print("--------------------------")
  4. print("Escriba sus instrucciones a continuacion")
  5. while True:
  6. entrada = input("--: ")
  7. # evaluando automata por automata
  8. m1 = M_mostrar()
  9. m1.FTrans(entrada)
  10. m2 = M_declarar_enteros()
  11. m2.FTrans(entrada)
  12. # traduccion
  13. print("--- eval 'mostrar'")
  14. if m1.aceptado():
  15. print("--- estados recorridos: "+str(m1.estados_recorridos))
  16. print("--- aceptado!")
  17. else:
  18. # errores
  19. print("--- estados recorridos: "+str(m1.estados_recorridos))
  20. print("--- final:"+str(m1.estado))
  21. print("")
  22. print("--- eval 'declarar entero'")
  23. if m2.aceptado():
  24. print("--- estados recorridos: "+str(m2.estados_recorridos))
  25. print("--- aceptado!")
  26. else:
  27. # errores
  28. print("--- estados recorridos: "+str(m2.estados_recorridos))
  29. print("--- final:"+str(m2.estado))
  30. print("------------------")