• 2019-10-16 作业


    1.分别写出描述以下语言的正规文法和正规式:

    L1={abna|n≥0}。

    L2={ambn|n≥1,m ≥1}

    L3={(ab)n|n≥1}

    解:

      (1)文法:S→aA A→aB B→bB→bB|ε

       正规式:S→ab*a

      (2)文法:S→AB A→aA|ε B→bB|ε

       正规式:S→a*b*

      (3)文法:S→ab|abS

       正规式:S→(ab)*

     2.将以下正规文法转换到正规式

    Z→0A
    A→0A|0B
    B→1A|ε

     解:

      Z=0A ,A=0A+0B ,B=1A+ε

      A=0A+0(1A+ε)

      A=0A+01A+0ε=0A+01A+0=(0+01)A+0

      令x=(0+01),y=0,根据规则A→xA|y转换为正规式为A=x*y

      A=x*y=(0+01)*0

      Z=0(0+01)*0=0(0|01)*0

    Z→U0|V1
    U→Z1|1
    V→Z0|0

     解:

      Z=U0+V1 ,U=Z1+1 ,V=Z0+0

       将U,V代入Z可得:Z=(Z1+1)0+(Z0+0)1=Z10+10+Z01+01=(10+01)Z+10+01=(10|01)*(10|01)

       Z=(10|01)*(10|01)

    S→aA
    A→bA|aB|b
    B→aA

     解:

      S=aA ,A=bA+aB+b ,B=aA

      A=bA+aaA+b=(b+aa)A+b

      Z = a(bA+aB+b)=abA+aaB+ab=abA+aaaA+ab= a*(ab)*

    I→l|Il|Id

    解:

      I=l+Il+Id=I(l+d)+l=l|(l|d)|l= l(l|d)*

  • 相关阅读:
    easyui
    mvc
    Servlet简单计算器 2.0
    简易Servlet计算器1.0
    javaBean 练习—封装学生信息
    application和javaBean练习
    远程存储程序
    通讯录
    黑名单管理代码总结
    DAO
  • 原文地址:https://www.cnblogs.com/chuichuichui1998/p/11700854.html
Copyright © 2020-2023  润新知