ФБН задача 1

ФБН задача 1:

Для описания выражений вида:

7
1+23-4+6-7+8
5+2

(суммы и разности целых чисел, количеством чисел от одного и более)
Можно использовать форму Бэкуса-Наура:

<Cifra> ::= [0-9]
<CeloeChislo> ::= "0" | ([1-9] <Cifra>*)
<Virazhenie> ::= <CeloeChislo> (("+" | "-") <CeloeChislo>)*

Задача: Модифицируйте это выражение таким образом, чтобы была возможна поддержка операции умножения, т.е. чтобы форма соответствовала выражениям:

3
23*4
1+
1+23*4*7+6-7+8*9

РЕШЕНИЕ:

<Cifra> ::= [0-9]
<CeloeChislo> ::= "0" | ([1-9] <Cifra>*)
<Virazhenie> ::= <CeloeChislo> (("*" | "+" | "-") <CeloeChislo>)*