Vous êtes sur la page 1sur 5

1

BNF Statements Syntax Rules in C / Pascal/ Fortran C statements: | | | | | expression-statement compound-statement statement-list | selection-statement | | iteration-statement | | jump-statement | | function-call-statement cases | statement expression-statement compound-statement selection-statement iteration-statement jump-statement function-call-statement expression; { statement-list } empty statement statement-list if (expression) statement if (expression) statement else statement switch (expresion) cases while ( expression ) statement do statement-list while ( expression ); for (expression;expression; expression) statement break ; continue; return [expression]; function-name([parameters]); case constant-expression : statement default : statement

Pascal Statements: | | | | | | | assignment-statement compound-statement statement-list | selection-statement | | iteration-statement | | procedure-call-statement | jump-statement case-list | for-list | other-statement statement assignment-statement compound-statement selection-statement iteration-statement jump-statement procedure-call-statement other-statement empty variable := expression begin statement-list end statement statement-list ; statement if expression then statement if expression then statement else statement case expression of case-list end while expression do statement repeat statement-list until expression for varid := for-list do statement procid procid ( expression-list ) return constant-expression: statement constant-expression: statement ; case-list expression to expression expression downto expression with record-variable-list do statement

FORTRAN Statements: | | | | | | | | | | assignment-statement | | arithmetic-if-statement logical-if-statement block-if-statement executable-statement assignment-statement arithmetic-if-statement logical-if-statement block-if-statement do-statement goto-statement call-statement return-statement stop-statement continue-statement io-statement variable-name = expression array-element-name = expression string-name = expression IF ( int-real-dp-expr ) label , label , label IF ( logical-expression ) executable-statement IF ( logical-expression ) THEN <cr> {statement} [else-if-statement] {statement} END IF <cr> | IF ( logical-expression ) THEN <cr> {statement} ELSE <cr> {statement} END IF <cr> ELSE IF ( logical-expression ) THEN <cr> {statement} [else-if-statement] {statement} END IF <cr> | ELSE IF ( logical-expression ) THEN <cr> {statement} ELSE <cr> {statement} END IF <cr>

else-if-statement

DO label [,] variable-name = int-real-dp-expr , int-real-dp-expr [, int-real-dp-expr] goto-statement GO TO label call-statement CALL subroutine-name | CALL subroutine-name ([param-list]) return-statement RETURN | RETURN integer-expr continue-statement CONTINUE stop-statement STOP param-list (expression | array-name | procedure-name ) { , (expression | array-name | procedure-name )} int-real-dp-expr integer-expr | real-expr io-statement read-statement | write-statement | print-statement write-statement WRITE aux0 read-statement READ aux0 | READ aux1 print-statement PRINT aux1 aux0 ( control-info-list ) [io-list] aux1 format-identier [, io-list] control-info-list aux2 aux2 FMT = format-identier [ , aux2 ] io-list (expression | array-name | io-implied-do-list) | { , ( expression | array-name | io-implied-do-list) } io-implied-do-list ( io-list , variable-name = int-real-dp-expr aux4 ) aux4 , int-real-dp-expr [, int-real-dp-expr ] expression arithmetic-expression | character-expression | logical-expression constant-expr arithmetic-const-expr | character-const-expr | logical-const-expr

do-statement

| | | | format-statement format-specication fmt-specication | aux5 | | | | | | aux6 aux7 | | | | | aux8 | | | | | repeat-spec d e w function-reference | aux9

format-identier

label variable-name array-name character-expresion * FORMAT format-specication ([fmt-specication]) repeat-spec aux5 aux5 ( fmt-specication ) aux6 I w aux6 I w . m aux6 A aux6 A w aux6 L w aux6 aux7 aux6 aux8 | , fmt-specication F w . d E w . d E w . d E e D w . d G w . d G w . d E e / : / fmt-specication : fmt-specication / , fmt-specication : , fmt-specication nonzero-unsigned-int-constant unsigned-int-constant nonzero-unsigned-int-constant nonzero-unsigned-int-constant function-name ( aux9 ) function-name ( ) ( expression | array-name | procedure-name) [ , aux9]

Vous aimerez peut-être aussi