资源描述
第三章
*******************************************************************************
1.构造下列语言的DFA ( 陶文婧 02282085 )
(1){0,1}*
(2){0,1}+
(3){x|xÎ{0,1}+且x中不含00的串}
(设置一个陷阱状态,一旦发现有00的子串,就进入陷阱状态)
(4){ x|xÎ{0,1}*且x中不含00的串}
(可接受空字符串,所以初始状态也是接受状态)
(5){x|xÎ{0,1}+且x中含形如10110的子串}
(6){x|xÎ{0,1}+且x中不含形如10110的子串}
(设置一个陷阱状态,一旦发现有00的子串,就进入陷阱状态)
(7){x|xÎ{0,1}+且当把x看成二进制时,x模5和3同余,要求当x为0时,|x|=1,且x¹0时,x的首字符为1 }
1. 以0开头的串不被接受,故设置陷阱状态,当DFA在启动状态读入的符号为0,则进入陷阱状态
2. 设置7个状态:开始状态qs,q0:除以5余0的等价类,q1:除以5余1的等价类,q2:除以5余2的等价类,q3:除以5余3的等价类,q4:除以5余4的等价类,接受状态qt
3. 状态转移表为
状态
0
1
q0
q1
q2
q1
q3
q2
q2
q0
q4
q3
q1
q2
q4
q3
q4
(8){x|xÎ{0,1}+且x的第十个字符为1}
(设置一个陷阱状态,一旦发现x的第十个字符为0,进入陷阱状态)
(9){x|xÎ{0,1}+且x以0开头以1结尾}
(设置陷阱状态,当第一个字符为1时,进入陷阱状态)
(10){x|xÎ{0,1}+且x中至少含有两个1}
(11){x|xÎ{0,1}+且如果x以1结尾,则它的长度为偶数;如果x以0结尾,则它的长度为奇数}
可将{0,1}+的字符串分为4个等价类。
q0: [e]的等价类,对应的状态为终止状态
q1:x的长度为奇且以0结尾的等价类
q2:x的长度为奇且以1结尾的等价类
q3: x的长度为偶且以0结尾的等价类
q4: x的长度为偶且以1结尾的等价类
(12){x|x是十进制非负数}
(13)F
(14)e
*******************************************************************************
2.
*******************************************************************************
3.根据下列给定文法,构造相应的FA。 (敖雪峰 02282068)
(1) 文法G1的产生式集合如下:
G1: S→a|Aa
A→a|Aa|cA|Bb
B→a|b|c|aB|Bb|Cb
(2) 文法G2的产生式集合如下:
G2: S→a|Aa
A→a|Aa|Ac|Bb
B→a|b|c|Ba|Bb|Bc
解答: 文法G1对应的FA如下所示
文法G2对应的FA如下所示
展开阅读全文