1

シプサの計算理論の本では、以下が与えられています:

小数部分および/または符号を含む可能性のある数値定数は、言語のメンバーとして記述される場合があります

(+ U-U e)(D + U D+。D*UD*。D+)

ここで、D = {0,1,2,3,4,5,6,7,8、9}は10進数のアルファベットです。生成される文字列の例は、72、3.14159、+ 7。、および-.01です。

ここで、D+またはD*の結合をとる目的が何であるか理解できませんか?さらに、なぜ3番目のドットが追加されるのですか?

誰かが私の疑問を解消してください。

4

1 に答える 1

3

次のケースをカバーしようとしています。

5    #matched by D+
.5   #matched by D*.D+
5.   #matched by D+.D*
5.5  #matched by both D*.D+ and D+.D*
.    #not matched

式の.文字は小数点記号です。次のように式を読むことができます。

( + U - U e) ( (D+) U (D+ . D*) U (D* . D+) )
于 2010-06-21T13:47:26.993 に答える