AaBbCeDx AaBbCeDe AaBl 1.+Write+a+pregram+to+count+cecurrenoes(出现久数)+of+ench+different+werd+in+a+fil
时间: 2023-12-29 22:25:50 浏览: 30
以下是对于字符串"AaBbCeDx"和"AaBbCeDe"的处理结果:
1. 将字符串"AaBbCeDx"按照大小写分组,得到短语:Aa、Bb、Ce、Dx。
2. 将字符串"AaBbCeDe"按照大小写分组,得到短语:Aa、Bb、Ce、De。
以下是对于句型"AaBl"的处理结果:
1. 将句型"AaBl"按照大小写分组,得到短语:Aa、Bl。
2. 直接短语为:Aa、Bl。
3. 句柄为:Aa。
以下是对于句型"P+T+(E+i)"的处理结果:
1. 将句型"P+T+(E+i)"按照符号分组,得到短语:P、T、(E+i)、P+T、T+(E+i)、P+T+(E+i)。
2. 直接短语为:P、T、(E+i)。
3. 句柄为:P。
相关问题
考虑文法G(A): A→ aABl | a B→ Bb | d (1) 试给出与G(A)等价的LL(1)文法 (2) 计算这个无左递归的文法的每个非终结符的 FIRST 集和 FOLLOW 集 (3) 构造无左递归文法的LL(1)分析表
(1) 给出的文法G(A)是不是LL(1)文法?观察可得文法G(A)不是LL(1)文法,因为A可以推出a,也可以推出aB,这两个产生式的FIRST集存在交集。于是需要对文法G(A)进行改写,使之成为LL(1)文法。
改写如下:
```
A -> aX
X -> Bl | ε
B -> dB'
B' -> Bb | ε
```
(2) 计算FIRST集和FOLLOW集
- FIRST(A) = {a}
- FIRST(X) = {ε, b}
- FIRST(B) = {d}
- FIRST(B') = {ε, b}
- FOLLOW(A) = {$, l}
- FOLLOW(X) = {l}
- FOLLOW(B) = {l}
- FOLLOW(B') = {l}
(3) 构造LL(1)分析表
| | a | b | d | l | $ |
|----|---|---|---|---|---|
| A | 1 | | | | |
| X | 1 | 2 | | | 2 |
| B | | 3 | 4 | | |
| B' | | 5 | 6 | 5 | 6 |
其中,数字表示使用的产生式编号。可以看到,在表中没有冲突,因此该文法是LL(1)文法。