Грамматика языка С: различия между версиями
Материал из Вики проекта PascalABC.NET
Перейти к навигацииПерейти к поиску
Ksanderer (обсуждение | вклад) (Новая: progr: | progr OperatorSequence ; Operator: def | assign | if | while | OutPut | BOperator ; BOperator: BEGIN OperatorSequense END ; OperatorSequense: | Operatorsequense op...) |
Ksanderer (обсуждение | вклад) Нет описания правки |
||
Строка 1: | Строка 1: | ||
progr: | <source lang="">progr: | ||
| progr OperatorSequence | | progr OperatorSequence | ||
; | ; | ||
Строка 62: | Строка 62: | ||
while: WHILE LB expr RB operator | while: WHILE LB expr RB operator | ||
</source> |
Версия от 14:22, 15 сентября 2011
progr:
| progr OperatorSequence
;
Operator: def
| assign
| if
| while
| OutPut
| BOperator
;
BOperator: BEGIN OperatorSequense END
;
OperatorSequense:
| Operatorsequense operator
;
def: ident varlist SEMICOLUMN
;
varlist: ident
| varlist COMMA ident
;
assgin: ident ASS expr SEMICOLUMN
;
expr
: ident
| INTNUM
| REALNUM
| TRUE
| FALSE
| MINUS expr %prec UMINUS
| LB expr RB
| expr PLUS expr
| expr MINUS expr
| expr MULT expr
| expr DIVIDE expr
| expr EQ expr
| expr NE expr
| expr LT expr
| expr LE expr
| expr GT expr
| expr GE expr
;
operand: ident
| const
;
const : intConst
| realCOnst
if: IF LB expr RB operator elsepart
;
elsepart:
| operator
while: WHILE LB expr RB operator