Exemple #1
0
 def run(self):
     gr = Grammar(self.__file_name)
     gr.readGrammarFromFile()
     while True:
         self.printMenuGrammar()
         cmd = int(input("\tChoose a command: "))
         if cmd == 1:
             print(gr.getNonTerminals())
         if cmd == 2:
             print(gr.getTerminals())
         if cmd == 3:
             print(gr.getStartSymbol())
         if cmd == 4:
             print(gr.getRules())
         if cmd == 5:
             cmd2 = input("Choose non-terminal: ")
             print(gr.getProductionsForAGivenNonTerminal(cmd2))
         if cmd == 6:
             print(gr.getFA())
         if cmd == 7:
             if gr.isRegular():
                 print("\nThe grammar is regular\n")
             else:
                 print("\nThe grammar is not regular\n")
         if cmd > 7 or cmd < 0:
             print("Choose a valid command: ")
         if cmd == 0:
             return