📄 example.txt
字号:
G[<程序>]:
<程序>::=<程序首部>;<分程序>.
<程序首部>::=program<标识符>
<分程序>::=<复合语句>
<复合语句>::=begin<语句序列>end
<语句序列>::=<语句>{;<语句>}
<语句>::=<赋值语句>|<复合语句>|<条件语句>
<赋值语句>::=<标识符>:=<表达式>
<条件语句>::=if <布尔表达式> then <语句> else <语句>
<表达式>::=<项>{(+|-)<项>}
<项>::=<因式>{(*|/)<因式>}
<因式>::=<标识符>|<无正负号常量>|'('<表达式>')'
<布尔表达式>::=<表达式><关系运算符><表达式>
<关系运算符>::= =|<|<=|>|>=|<>
<标识符>::=<字母>{<字母>|<数字>}
<无正负号常量>::=<数字>{<数字>}[.<数字>{<数字>}]
<字母>::=a|b|c|d|e|f|g|……|u|v|w|x|y|z
<数字>::=0|1|2|3|4|5|6|7|8|9
根据此文法,构造一词法分析程序。输入以"#"为结束符
按照这个文法,找出该语言的关键字,如program,begin,end ,if,then,else,以及其他一些特殊符号,然后再构造一个分析表,如下表:
单词符号 类别编号
标识符 1
常数 2
if 3
then 4
else 5
program 6
begin 7
end 8
+ 9
- 10
* 11
/ 12
( 13
) 14
> 15
>= 16
< 17
<= 18
<> 19
:= 20
; 21
. 22
, 23
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -