0

これは、指数 PowExp の正しい結合性を実装する正しい方法ですか? したがって、2^3^4 は実際には (2^(3^4)) です。

<Exp> ::= <Exp> + <MulExp>
| <Exp> - <MulExp>
| <MulExp>
<MulExp> ::= <MulExp> * <PowExp>
| <MulExp> / <PowExp>
| <PowExp>
<PowExp> ::= <NegExp> ^ <PowExp>
|<NegExp>
<NegExp> ::= - <RootExp>
| <RootExp>
<RootExp> ::= ( <Exp> )
| 1 | 2 | 3 | 4
4

1 に答える 1

0

あなたの書き方は正しいです。

ちなみに、階層を再考する必要があるかもしれません。通常の数学では、-3 4は -(3 4 ) であり、(-3) 4ではありません。したがって、- 3 ^ 4を意味- (3 ^ 4)したい場合があります。この場合、その逆ではなく、NegExp含めることになります。(しかし、 if means はPowExp混乱を招く可能性があると思います。したがって、ここには直感的な操作順序がないのではないでしょうか?別の可能性は、と両方が に直接依存することにより、どちらかの読み取りに括弧を必要とすることです。)-3 ^ 4-(3 ^ 4)PowExpNegExpRootExp

于 2015-02-11T03:13:18.617 に答える