结构推理
为下列文法配上语义子程序,以便求取数的整数值:
N→ND|D
D→0|1|2|3|4|5|6|7|8|9
【正确答案】为文法符号配上属性Value,表示相应的数值。利用该属性,语义子程序可以描述如下:
N1→N2D(N1.Value=N2.Value*10+D.Value}
N→D{N.Value=D.Value}
D→0{D.Value=0}
D→1{D.Value=1}
D→2{D.Value=2}
D→3{D.Value=3}
D→4{D.Value=4}
D→5{D.Value=5}
D→6{D.Value=6}
D→7{D.Value=7}
D→8{D.Value=8}
D→9{D.Value=9}
【答案解析】