说明: 实习一是必须完成的。实习二可选,但是没有完成实习二的同学的期末成绩不
能高于良。
实习一: LR(1)分析技术的实现
要求:
输入: 文法输出:
如果输入文法是LR(1)文法,输出LR(1)项集规范族和分析表,并且分析
表存放在一个单独的文件里面。
如果输入文法不是LR(1)文法,输出LR(1)项集规范族,指出冲突项集。
程序设计语言:java.
最后提交结果应该包括:
文法输入文件的语法。
源程序,
源程序说明:包括程序的基本结构,类,类之间的关系,每个类的成员
函数的作用。全局变量作用说明。
两个以上的文法输入文件的例子。
注意:不接受没有源程序说明,或者说明和程序不符合的作业。
实习二(可选):LR(1)驱动程序
要求如下,
输入:LR(1)分析表文件,文法输入文件,输入符号串文件输出:
如果输入符号串是句子,输出'yes',并且给出每一步归约的过程。
如果不是句子,输出'No',并且输出栈里面已经归约的符号。