- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第三章 文法和语言;第三章 知识点;作业3.5 写一文法,使其语言是偶正整数的集合
要求:
(1) 允许0打头
分析:
偶正整数:S → 多位偶正整数 | 一位偶正整数
多位偶正整数→ 任意0~9数字多位偶正整数 |
最后一位为0的十位数:A0A →1 | 3 | 5 | 7 | 9 | D
通用数表示方法:B→A | 0
则应表示为:S →D | A0 | BS;作业3.5 写一文法,使其语言是非负偶整数的集合(允许0打头)
分析
非负偶整数的末位为:〈偶数字〉→0 | 2 | 4 | 6 | 8
其他位数可以用〈数字串〉来表示,该〈数字串〉是由任意个0~9的〈数字〉构成的,故此用〈数字串〉→ 〈数字串〉〈数字〉|〈数字〉
文法G[〈非负偶整数〉]:〈非负偶整数〉→〈偶数字〉|〈数字串〉〈偶数字〉〈数字串〉→ 〈数字串〉〈数字〉|〈数字〉〈数字〉 → 〈偶数字〉| 1 | 3 | 5 | 7 | 9〈偶数字〉→ 0 | 2 | 4 | 6 | 8;写一文法,使其语言是偶正整数的集合
分析:
将数分成三部分,最高位、个位数和其它位数。个位数为偶数,最高位不为0,其它位数为任意数
若只有个位数:〈单偶数〉→2 | 4 | 6 | 8
若位数1时,个位数:〈尾偶数〉 → 0 | 〈单偶数〉
最高位定义为:〈首数字〉 → 1 | 3 | 5 | 7 | 9 |〈单偶数〉
其他位数用〈数字串〉表示:〈数字串〉→ 〈数字串〉〈数字〉|〈数字〉|ε〈数字〉 → 0 | 〈首数字〉
故此,偶正整数定义为:〈偶正整数〉 → 〈单偶数〉|〈首数字〉〈数字串〉〈尾偶数〉;作业3.6 已知文法,给出下述表达式的推导及语法树;作业3.6 已知文法,给出下述表达式的推导及语法树;作业3.9 考虑下面上下文无关文法:S→SS* | SS+ |a
(1)表明通过此文法如何生成串aa+a*,并为该串构造推导树
(2)该文法生成的语言是什么?;作业3.11 令文法G[E]为E →T | E+T | E-TT →F | T*F | T/FF →( E ) | i
证明:E+T*F是它的一个句型,指出这个句型的所有短语、直接短语和句柄。;E;作业3.12 下述文法G[E]生成的语言是什么?给出该文法的一个句子,该句子至少包含5个终结符,构造该句子的语法树。
证明:ETFMOPPOP是G[E]的句型,并指出该句型的所有短语、直接短语和句柄;E;练习题;练习3.1 文法G:S→xSx|y所识别的语言是;练习3.2 文法G描述的语言L(G)是指;练习3.3 由文法开始符经0步或多步推导产生的文法符号序列是;练习3.4 如果文法G是无二义的,则他的任何句子________ (西安电子科技大学1999);练习3.5 设文法为:S→SA | A A→a | b,则对句子aba,下面是规范推导的是________;练习3.6 填空题;练习3.7 文法G[S];1型文法
因为|?|≤|?|
S?abQ?abc
S?aSPQ?aabQPQ?a2bPQQ
?a2bbQQ?a2bbcQ?a2b2c2
S?aSPQ?aaSPQPQ?aaaSPQPQPQ
?an-1S(PQ)n-1?an-1abQ(PQ)n-1
?anbPn-1Qn?anbbPn-2Qn
?anbnQn?anbncQn-1?anbncn
L(G)={ anbncn |n≥1};练习3.8 指出下列文法的类型,并给出所描述的语言 (清华大学2000年);此文法为2型文法
文法中存在的问题
C不能推导出终结符,它为不可终止的符号
文法中有多余的非终结符D
将多余规则去掉化简为;S?Be?Afe?efe
S?Be?Afe?Aefe?e2fe
S?Be?Afe?Aefe?…?Aen-1fe?enfe
L(G)={enfe | n≥1};A??
A?aB?aa
A?aB?aAb?ab
A?aB?aAb?aaBb?aaab?aaab
A?aB?aAb?aaBb?aaAbb?aabb
A?aB?aAb?aaBb?aaAbb?aaaBbb?aaaabb
A?aB?aAb?aaBb?aaAbb?aaaBbb?aaaAbbb?aaabbb
L(G)={ an+2bn 或anbn | n ≥0};S?abcA?abc
S?abcA?abcS?abcabcA?abcabc
S?abcA?abcS?abcabcA?…?(abc)nA?(abc)n
L(G)={ (abc)n |n≥1}
文档评论(0)