1、程 序 设 计 语 言,CH3.词法分析 程序设计语言编译原理陈火旺等编著2000年第3版,编译原理参考答案,2019/6/23,作业评讲,CH.3.练习题2(P63.),2. 给出下面C+程序段中的单词符号及其属性值。 int CInt:nMulDiv(int n1,int n2) if (n3 = = 0) return 0;else return (n1*n2)/n3; 问题:没写全;表达不准确 解:, , , , , , , , , , , ,2019/6/23,作业评讲,CH.3.练习题2(P63.),续解: , , , , , , , , , , , , , , , , 。,CH.
2、3.练习题5(P63.),5. 证明3.3.1中关于正规式的交换律、结合律等五个关系。 解:证明 U|V=V|U因为 L(U|V)=L(U)L(V) =L(V)L(U)=L(V|U) 解:证明 U(VW)=(UV)W因为 L(U(VW) =L(U)L(VW)= L(U)(L(V)L(W)=(L(U)L(V)L(W)= L(UV)L(W) = L(UV)W),CH.3.练习题7(P64.),7. 问题:没构造出DFA;没过程;方法没掌握。(1) 1(0|1)*101 解1: 正规式对应的NFA:,CH.3.练习题7(P64.),(1) 正规式 1(0|1)*101,DFA:,初始: 0,1,2,
3、3,4和5 0,1,2,3,40=2,40,1,2,3,41=1,3,5 划分为0,1,2,3和4 0,1,2,30=2,4 划分为0,1,2和3 0,1,21=1,3 划分为0和1,2 1,20=2 1,21=3 最后划分得5个子集:0, 1,2, 3, 4, 5,最小化DFA:,CH.3.练习题7(P64.),7. 构造下列正规式相应的DFA。(1) 1(0|1)*101 解2: 正规式对应的NFA:,DFA:,CH.3.练习题7(P64.),(3) 正规式 0*10*10*10*,DFA:,最小化DFA:,NFA:,2019/6/23,作业评讲,CH.3.练习题8(P64.),8. 给出
4、下面的正规表达式。 (1) 以01结尾的二进制数串;正规式 (0|1)*01 或 (0*1*)*01 (2) 能被5整除的十进制整数; 正规式 :(0|1|2|3|4|5|6|7|8|9)*(0|5) 或(0*1*2*3*4*5*6*7*8*9*)*(0|5) 或(0|5)|(1|2|3|9)(0|1|2|3|9)*(0|5) (3) 英文字母组成的所有符号串, 要求符号串中的字母依照字典序排列;正规式 (a|A)*(b|B)*(c|C)*(d|D)*(z|Z)*,CH.3.练习题9(P64.),9.问题:没构造出DFA;没过程;方法没掌握。 (1) 0,1上的含有子串010的所有串; 至少含
5、一个。正规式 (0|1)*010(0|1)* 或 (0*1*)*010(0*1*)*,NFA:,1,A,D,0,B,0,1,0,0,1,C,2019/6/23,作业评讲,CH.3.练习题9(P64.),正规式 (0|1)*010(0|1)*,最小化DFA:,1,0,3,0,0,1,1,1,0,0,1,2,DFA:,1,0,5,0,0,1,1,1,0,1,2,3,0,4,0,0,1,1,2019/6/23,作业评讲,CH.3.练习题10(P64.),10. 用FA写出渡河的方法。 设:人-R;狼-L;羊-Y;菜-C;左岸-Z;右岸-U; 状态 左岸到右岸, 人或人带一件东西右岸到左岸, 人或人带
6、一件东西,左: 右:,+ 人,东西, 人,东西,2019/6/23,作业评讲,CH.3.练习题10(P64.),Z: U:rlyc,+ r,c, r,Z:c U:rly,Z:ryc U:l,+ r,l,Z:lc U:ry,+ r,y,Z:rlc U:y,+ r,l,Z:y U:rlc,Z:ry U:lc,Z:rlyc U:,Z:l U:ryc,Z:rly U:c, r,y, r,y,+ r,c, r,+ r,y,CH.3.练习题12(P64.),12.问题:没过程;方法没掌握。 将(a)确定化。,0,a,2,a,a,最小化DFA:,1,b,b,确定化DFA:,确定化:,(a) NFA:,CH.
7、3.练习题12(P64.),12.将(b)最小化。(b) DFA:,初始: 0,1, 2,3,4,5 0,1a =10,1b =2,4 不分 2,3,4,5a =1,3,0,5 分成 2,4和3,5 2,4a =1,0 2,4b =3,5 不分 3,5a =3,53,5b =2,4 不分 最后得到三个子集:0,1, 2,4, 3,5 选出代表: 0, 2, 3 最小化的结果如图所示,最小化DFA:,CH.3.练习题14(P64.),14.问题:没构造出DFA;没过程;方法没掌握。(1) 正规式: (10|0)*(2) NFA: 确定化:,DFA:,CH.3.练习题15(P64.),15.问题:没转换过程;转换方法没掌握。S0S|1S|1A|0BA1C|1B0C|0C0C|1C|0|1,GRFA:,FA GL : fA1|B0|C1|C0AS1|1BS0|0CA1|B0|C1|C0SS0|S1|1|0,