Сводные синтаксические диаграммы языка...

Post on 03-Feb-2020

30 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Сводные синтаксические диаграммы языка Паскаль

В данное пособие включены СД из приложения 1 ( стр. 361 ) учебника [2] ( опечатки исправлены ) . Каждая диаграмма дополнена соответствующей БНФ формулой (используются фигурные скобки { } ). [3] содержит описание метаязыков СД и БНФ. Оглавление может быть использовано как предметный указатель .

Литература [ 1 ] Паскаль: руководство для пользователя. Йенсен К., Вирт Н.

М.Финансы и статистика 1989 [ 2 ] Введение в язык Паскаль В.Г.Абрамов, Н.П.Трифонов, Г.Н.Трифонова М.КНОРУС 2011 [ 3 ] Металингвистические формулы и синтаксические диаграммы. А.А. Вылиток

М.: МАКС Пресс, 2012.

программа

заголовок программы ; блок .

< программа > ::= < заголовок программы > ; < блок > . Учебное пособие для групп преп. Матвеева Т.К. Стр 1 из 60

Синтаксические диаграммы языка Паскаль Стр 2 из 60

< заголовок программы > ::= program < имя программы > ( < имя файла >{ , < имя файла >} )

блок

раздел описаний раздел операторов

program имя программы имя файла (

,

)

заголовок программы

< блок > ::= < раздел описаний > < раздел операторов >

раздел описаний

раздел меток

раздел констант

раздел процедур и функций

раздел переменных

раздел типов

< раздел описаний > ::= < раздел меток > < раздел констант > < раздел типов > < раздел переменных > < раздел процедур и функций > Замечание. Отсутствие того или иного раздела включено в описание раздела далее.

Учебное пособие для групп преп. Матвеева Т.К. Стр 3 из 60

Синтаксические диаграммы языка Паскаль Стр 4 из 60

< раздел меток > ::= | label< метка оператора >{ , < метка оператора >} ;

раздел констант

описание константы const ;

метка оператора ; label

,

раздел меток

< раздел констант > ::= | const< описание константы > ; {< описание константы> ; }

< раздел типов > ::= | type<описание типа> ; {<описание типа> ; }

раздел переменных

; описание переменных var

; описание типа type

раздел типов

< раздел переменных > ::= | var<описание переменных> ; {<описание переменных> ; }

Учебное пособие для групп преп. Матвеева Т.К. Стр 5 из 60

Синтаксические диаграммы языка Паскаль Стр 6 из 60

< раздел процедур и функций> ::= | <описание процедуры>; | <описание функции>; | <раздел процедур и функций> <описание процедуры>; | <раздел процедур и функций> <описание функции>;

раздел операторов

составной оператор

описание процедуры

описание функции

;

раздел процедур и функций

< раздел операторов > ::= <составной оператор>

< оператор > ::= < основной оператор > | < производный оператор > | < метка оператора > : < основной оператор > | < метка оператора > : < производный оператор >

основной оператор

оператор присваивания

пустой оператор

оператор перехода

оператор процедуры

: метка оператора

основной оператор

производный оператор

оператор

Учебное пособие для групп преп. Матвеева Т.К. Стр 7 из 60

Синтаксические диаграммы языка Паскаль Стр 8 из 60

< основной оператор > ::= < оператор присваивания > | < пустой оператор > | < оператор перехода > | < оператор процедуры >

оператор присваивания

переменная

имя функции

выражение :=

< оператор присваивания > ::= < переменная > := < выражение > | < имя функции > := < выражение >

(там, где по синтаксису языка необходимо наличие оператора, а в соответствии с

семантикой никаких действий делать не нужно, используется пустой оператор (пусто))

пустой оператор

< пустой оператор > ::=

< оператор перехода > ::= goto < метка оператора >

оператор процедуры

имя процедуры фактический параметр ( )

,

метка оператораgoto

оператор перехода

< оператор процедуры > ::= < имя процедуры > | < имя процедуры > ( < фактический параметр > { , < фактический параметр > } )

Учебное пособие для групп преп. Матвеева Т.К. Стр 9 из 60

Синтаксические диаграммы языка Паскаль Стр 10 из 60

фактический параметр

выражение

переменная

имя функции

имя процедуры

< фактический параметр > ::= < выражение > | < переменная > | < имя функции > | < имя процедуры >

производный оператор

< производный оператор > ::= < составной оператор > | < выбирающий оператор > | < оператор цикла > | < оператор присоединения >

составной оператор

выбирающий оператор

оператор цикла

оператор присоединения

составной оператор

< составной оператор >

оператор begin end

;

::= begin < оператор > { ; < оператор > } end

Учебное пособие для групп преп. Матвеева Т.К. Стр 11 из 60

Синтаксические диаграммы языка Паскаль Стр 12 из 60

< выбирающий оператор > ::= < условный оператор > | < оператор варианта >

условный оператор

логическое выражениеif then оператор

оператор else

условный оператор

оператор варианта

выбирающий оператор

< условный оператор > ::= if < логическое выражение > then < оператор > | if < логическое выражение > then < оператор > else < оператор >

опер нтаатор вариа

селектор оператора of

метка варианта оператор :

;

end

,

;

case

< оператор варианта > ::= case <селектор оператора> of < элемент списка варианта > { ; < элемент списка варианта > } <конец > < элемент списка варианта > ::= < список меток варианта > : <оператор> < список меток варианта> ::= <метка варианта> { , <метка варианта>} < конец > ::= end | ; end

Учебное пособие для групп преп. Матвеева Т.К. Стр 13 из 60

Синтаксические диаграммы языка Паскаль Стр 14 из 60

селектор оператора

индексное выражение

< селектор оператора > ::= <индексное выражение>

метка варианта

константа

( константа – целого, литерного, перечислимого или логического типа )

< метка варианта > ::= <константа>

< оператор цикла > ::= <оператор цикла с параметром> | <оператор цикла с предусловием> | <оператор цикла с постусловием>

оператор цикла с параметром

параметр цикла for := выражение

выражение

to

do

downto

оператор

оператор цикла с параметром

оператор цикла с предусловием

оператор цикла с постусловием

оператор цикла

Учебное пособие для групп преп. Матвеева Т.К. Стр 15 из 60

Синтаксические диаграммы языка Паскаль Стр 16 из 60

< оператор цикла с параметром > ::= for <параметр цикла> := <выражение> to <выражение> do <оператор> | for <параметр цикла> := <выражение> downto <выражение> do <оператор>

< параметр цикла > ::= <имя переменной>

оператор цикла с предусловием

оператор while doлогическое выражение

имя переменной

параметр цикла

< оператор цикла с предусловием > ::= while <логическое выражение> do <оператор>

оператор цикла с постусловием

оператор repeat until логическое выражение

;

< оператор цикла с постусловием > ::= repeat <оператор> { ; <оператор> } until <логическое выражение>

оператор присоединения

переменная with do оператор

,

(переменная – комбинированного типа)

< оператор присоединения > ::= with <переменная> { , <переменная> } do <оператор>

Учебное пособие для групп преп. Матвеева Т.К. Стр 17 из 60

Синтаксические диаграммы языка Паскаль Стр 18 из 60

выражение

< выражение >

арифметическое выражение

литерное выражение

логическое выражение

выражение перечислимого типа

выражение регулярного типа

выражение комбинированного типа

ссылочное выражение

множественное выражение

::= <арифметическое выражение> | <литерное выражение> | <логическое выражение> | <выражение перечислимого типа> | <выражение регулярного типа> | <выражение комбинированного типа> | <ссылочное выражение> | <множественное выражение>

арифметическое выражение

-

+

слагаемое

+ -

< арифметическое выражение > ::= <слагаемое> { < операции сложения > <слагаемое> } | < операция сложения > <слагаемое> { <операция сложения> <слагаемое>} < операция сложения > ::= + | –

Учебное пособие для групп преп. Матвеева Т.К. Стр 19 из 60

Синтаксические диаграммы языка Паскаль Стр 20 из 60

слагаемое

множитель

* / mod div

< слагаемое > ::= <множитель> { < операция умножения > <множитель> } < операция умножения > ::= * | / | mod | div

множитель

вещественное без знака

целое без знака

переменная

функция

арифметическое выражение( )

(переменная , функция – целого или вещественного типа)

< множитель > ::= <вещественное без знака> | <целое без знака> | <переменная> | <функция> | ( <арифметическое выражение> )

Учебное пособие для групп преп. Матвеева Т.К. Стр 21 из 60

Синтаксические диаграммы языка Паскаль Стр 22 из 60

литерное выражение

константа литерного типа

переменная литерного типа

функция литерного типа

< литерное выражение > ::= <константа литерного типа> | <переменная литерного типа> | <функция литерного типа>

< выражение перечислимого типа > ::= <константа перечислимого типа> | <переменная перечислимого типа> | <функция перечислимого типа> выражение регулярного типа

переменная регулярного типа

строковая константа

константа перечислимого типа

переменная перечислимого типа

функция перечислимого типа

выражение перечислимого типа

< выражение регулярного типа > ::= <переменная регулярного типа> | <строковая константа>

Учебное пособие для групп преп. Матвеева Т.К. Стр 23 из 60

Синтаксические диаграммы языка Паскаль Стр 24 из 60

выражение комбинированного типа

переменная комбинированного типа

< выражение комбинированного типа > ::= <переменная комбинированного типа>

ссылочное выражение

переменная ссылочного типа

функция ссылочного типа

nil

< ссылочное выражение > ::= nil | <переменная ссылочного типа> | <функция ссылочного типа>

множественное выражение

конструктор множества

переменная множественного типа

множественное выражение ( )

* - +

< множественное выражение > ::= < простое множественное выражение > | < множественное выражение > < операция над множествами > < множественное выражение > < простое множественное выражение > ::= < конструктор множества > | < переменная множественного типа > | (< множественное выражение >) < операция над множествами > ::= * | + | –

Учебное пособие для групп преп. Матвеева Т.К. Стр 25 из 60

Синтаксические диаграммы языка Паскаль Стр 26 из 60

конструктор множества

] индексное выражение

.. индексное выражение

,

[

< конструктор множества > ::= [ < пусто > | < список элементов > ] < список элементов > ::= < элемент > | < элемент >{ ,< элемент > } < элемент > ::= <индексное выражение> | <индексное выражение > .. < индексное выражение >

индексное выражение

арифметическое выражение типа integer

литерное выражение

логическое выражение

выражение перечислимого типа

< индексное выражение> ::= < арифметическое выражение типа integer >|< литерное выражение > | < логическое выражение > | < выражение перечислимого типа >

Учебное пособие для групп преп. Матвеева Т.К. Стр 27 из 60

Синтаксические диаграммы языка Паскаль Стр 28 из 60

логическое выражение

простое логическое выражение

отношение

< логическое выражение > ::= <простое логическое выражение> | < отношение> простое логическое выражение

логическое слагаемое

or

< простое логическое выражение > ::= < логическое слагаемое > | < простое логическое выражение > or < логическое слагаемое >

или с использованием { } фигурных скобок <простое логическое выражение> ::= <логическое слагаемое> { or <логическое слагаемое> }

< логическое слагаемое > ожитель > |

< логический множитель >

логическое слагаемое

логический множитель

and

::= < логический мн < логическое слагаемое > and

Учебное пособие для групп преп. Матвеева Т.К. Стр 29 из 60

Синтаксические диаграммы языка Паскаль Стр 30 из 60

логический множитель

константа логического типа

переменная логического типа

функция логического типа

логический множитель not

( логическое выражение )

< логический множитель > ::= < константа логического типа > | < переменная логического типа > | < функция логического типа > | not < логический множитель > | ( < логическое выражение > )

отношение

скалярное отношение

строковое отношение

множественное отношение

< отношение > ::= < скалярное отношение > | < строковое отношение > | < множественное отношение >

Учебное пособие для групп преп. Матвеева Т.К. Стр 31 из 60

Синтаксические диаграммы языка Паскаль Стр 32 из 60

арифметическое выражение

простое логическое выражение

выражение перечислимого типа

литерное выражение

ссылочное выражение

операция сравнения арифметическое выражение

операция сравнения

простое логическое выражение

операция сравнения

выражение перечислимого типа

операция сравнения литерное выражение

=

<>

ссылочное выражение

скалярное отношение

< скалярное отношение > ::= < арифметическое выражение >< операция сравнения >< арифметическое выражение > | < простое логическое выражение >< операция сравнения > < простое логическое выражение > | < выражение перечислимого типа > < операция сравнения >< выражение перечислимого типа >|< литерное выражение >< операция сравнения > < литерное выражение > | <ссылочное выражение> = <ссылочное выражение> | <ссылочное выражение> <> <ссылочное выражение>

строковое отношение

строковая константа

переменная

строковая константа

переменная

операция сравнения

< строковое отношение > ::= < строковая константа >< операция сравнения > < строковая константа > | < переменная >< операция сравнения > < строковая константа > | < строковая константа >< операция сравнения >< переменная > | < переменная >< операция сравнения >< переменная >

Учебное пособие для групп преп. Матвеева Т.К. Стр 33 из 60

Синтаксические диаграммы языка Паскаль Стр 34 из 60

операция сравнения

>

>=

<

<=

<>

=

< операция сравнения > ::= = | <> | <= | < | >= | >

множественное отношение

=

<>

<=

>=

множественное выражение

множественное выражение индексное выражение in

< множественное отношение > ::= < множественное выражение > < операция> < множественное выражение > | < индексное выражение > in < множественное выражение > < операция > ::= = | <> | <= | >=

Учебное пособие для групп преп. Матвеева Т.К. Стр 35 из 60

Синтаксические диаграммы языка Паскаль Стр 36 из 60

индекс

< индекс > ::= <индексное выражение>

индексное выражение

переменная

имя переменной

имя поля [ ]индекс

,

. имя поля

< переменная > ::= < полная переменная > | < индексированная переменная > | < обозначение поля > | < переменная с указателем > | < буферная переменная > < полная переменная > ::= < имя переменной > < индексированная переменная > ::= < переменная-массив > [< индекс > { , < индекс > }] < обозначение поля > ::= < переменная-запись > . < имя поля > | < имя поля > *) < переменная с указателем > ::= < ссылочная переменная > ↑ < буферная переменная > ::= < переменная-файл > ↑ < переменная-массив > ::= < переменная > < переменная-запись > ::= < переменная > < переменная-файл > ::= < переменная > < ссылочная переменная > ::= < переменная > < имя переменной > ::= < имя > < имя поля > ::= < имя > _____________________________________________________________

пособие для групп преп. Матвеева Т.К. Стр 37 из 60 *) конструкция < имя поля >возможна только внутри оператора with Учебное

Синтаксические диаграммы языка Паскаль Стр 38 из 60

< описание переменных > ::= <список имен переменных> : <тип> <список имен переменных> ::= <имя переменной> | <список имен переменных> , <имя переменной>

описание константы

имя константы = константа

имя переменной :

,

тип

описание переменных

< описание константы > ::= <имя константы> = <константа>

константа

имя арифметической константы

число без знака

имя

литерная константа

строковая константа

+

-

< константа > ::= <знак><имя арифметической константы> | <знак><число без знака> | <имя> | <литерная константа> | <строковая константа> < знак > ::= | + | –

Учебное пособие для групп преп. Матвеева Т.К. Стр 39 из 60

Синтаксические диаграммы языка Паскаль Стр 40 из 60

= тип имя типа

описание типа

< описание типа > ::= <имя типа> = <тип>

< тип > ::= < имя типа > | < задание перечислимого типа > | < задание ограниченного типа> | <задание ссылочного типа> | <структурированный тип> | packed <структурированный тип> < структурированный тип > ::= < задание регулярного типа > | < задание комбинированного типа > | < задание множественного типа > | < задание файлового типа >

тип

имя типа

задание перечислимого типа

задание ограниченного типа

задание ссылочного типа

задание регулярного типа

задание комбинированного типа

задание множественного типа

задание файлового типа

packed

Учебное пособие для групп преп. Матвеева Т.К. Стр 41 из 60

Синтаксические диаграммы языка Паскаль Стр 42 из 60

< задание перечислимого типа > ::= ( < список идентификаторов > ) < список идентификаторов > ::= < идентификатор > | < список идентификаторов > , < идентификатор > задание ограниченного типа

константа константа ..

идентификатор ( )

,

задание перечислимого типа

(константа – типа , который является базовым для данного ограниченного типа)

< задание ограниченного типа > ::= < константа > .. < константа >

задание ссылочного типа

имя типа ↑

< задание ссылочного типа > ::= ↑ < имя типа >

задание регулярного типа

< задание регулярного типа >

array [ ]тип индекса

,

of тип

( тип индекса – любой скалярный тип, кроме real )

::= array [< список индексов >] of < тип > < список индексов > ::=< тип индекса >|< список индексов > , < тип индекса >

Учебное пособие для групп преп. Матвеева Т.К. Стр 43 из 60

Синтаксические диаграммы языка Паскаль Стр 44 из 60

< задание комбинированного типа > ::= record < список полей > end | record < список полей > ; end

список полей

секция записи

;

список полей end ;

record

задание комбинированного типа

< список полей > ::= < секция записи > | < список полей > ; < секция записи >

секция записи

имя поля

,

тип :

< секция записи > ::=< список имен полей > : < тип > < список имен полей > ::= < имя поля > | < список имен полей > , < имя поля >

задание множественного типа

set of тип

( тип – любой скалярный тип, кроме real )

< задание множественного типа > ::= set of<тип>

Учебное пособие для групп преп. Матвеева Т.К. Стр 45 из 60

Синтаксические диаграммы языка Паскаль Стр 46 из 60

< задание файлового типа > ::= file of <тип>

описание функции

заголовок функции  ; блок

file of тип

(тип – любой тип, не содержащий файловый тип)

задание файлового типа

< описание функции > ::= <заголовок функции> ; <блок>

< заголовок функции > ::= function <имя функции> <совокупность формальных параметров> : <имя типа>

опис дуры ание проце

заголовок процедуры  ; блок

function имя функции

совокупность формальных параметров : имя типа

(имя типа - имя простого или ссылочного типа)

заголовок функции

< описание процедуры > ::= <заголовок процедуры> ; <блок>

Учебное пособие для групп преп. Матвеева Т.К. Стр 47 из 60

Синтаксические диаграммы языка Паскаль Стр 48 из 60

< заголовок процедуры > ::= procedure <имя процедуры><совокупность формальных параметров>

совокупность формальных параметров

секция формальных параметров ( )

;

procedure имя процедуры

совокупность формальных параметров

заголовок процедуры

< совокупность формальных параметров > ::= <пусто> | (< список параметров>) <список параметров> ::= <секция формальных параметров> | <список параметров> ; <секция формальных параметров>

секция формальных параметров

параметры-значения

параметры-переменные

параметр-функция

парметр-процедура

< секция формальных параметров > ::= <параметры-значения> | <параметры-переменные> | <параметр-функция> | <параметр-процедура>

Учебное пособие для групп преп. Матвеева Т.К. Стр 49 из 60

Синтаксические диаграммы языка Паскаль Стр 50 из 60

< параметры-значения > ::= <список идентификаторов> : <имя типа>

параметры-переменные

идентификатор : имя типа

,

var

идентификатор : имя типа

,

параметры-значения

< параметры-переменные > ::= var <список идентификаторов> : <имя типа>

< параметр-функция > ::= <заголовок функции>

параметр-процедура

заголовок процедуры

заголовок функции

параметр-функция

< параметр-процедура > ::= <заголовок процедуры>

Учебное пособие для групп преп. Матвеева Т.К. Стр 51 из 60

Синтаксические диаграммы языка Паскаль Стр 52 из 60

функция

< функция > ::= < имя функции > | < имя функции >(< список фактических параметров >) < список фактических параметров > ::= < фактический параметр > | <список фактических параметров> , <фактический параметр>

имя функции ( фактический параметр )

,

имя

идентификатор

< имя > ::= <идентификатор>

идентификатор

буква

буква

цифра

< идентификатор > ::= < буква > |< идентификатор > < буква > | < идентификатор >< цифра >

метка оператора

< метка оператора >

целое без знака

(целое без знака из диапазона от 0 до 9999)

::= < целое без знака >

Учебное пособие для групп преп. Матвеева Т.К. Стр 53 из 60

Синтаксические диаграммы языка Паскаль Стр 54 из 60

< число без знака > ::= < целое без знака > | < вещественное без знака >

целое без знака

цифра

целое без знака

вещественное без знака

число без знака

< целое без знака > ::= < цифра > | < целое без знака >< цифра >

< вещественное без знака > ::= < число с фиксированной точкой > | < число с плавающей точкой >

число с фиксированное точкой

цифра . цифра

число с фиксированное точкой

число с плавающей точкой

вещественное без знака

< число с фиксированное точкой > ::= <целое без знака> . <целое без знака >

Учебное пособие для групп преп. Матвеева Т.К. Стр 55 из 60

Синтаксические диаграммы языка Паскаль Стр 56 из 60

< число с плавающей точкой > ::= <целое без знака> E <знак><целое без знака> | <число с фиксированной точкой> E <знак><целое без знака>

литерная константа

литера '

'

'

'

+

-

Е целое без знака целое без знака

число с фиксированной точкой

число с плавающей точкой

< литерная константа > ::= ’ <литера> ’ | ’’’’

строковая константа

' ' литера

'

литера

' ' '

< строковая константа > ::= ’ < группа литер > ’ < группа литер > ::= < два символа > { < литера или кавычка > } < два символа > ::= < литера или кавычка > < литера или кавычка > < литера или кавычка > ::= < литера > | ’ ’’ ’

Учебное пособие для групп преп. Матвеева Т.К. Стр 57 из 60

Синтаксические диаграммы языка Паскаль Стр 58 из 60

Оглавление

< программа > 1 < заголовок программы > 2 < блок > 2 < раздел описаний > 3 < раздел меток > 4 < раздел констант > 4 < раздел типов > 5 < раздел переменных > 5 < раздел процедур и функций> 6 < раздел операторов > 6 < оператор > 7 < основной оператор > 8 < оператор присваивания > 8 < пустой оператор > ::= 8 < оператор перехода > 9 < оператор процедуры > 9 < фактический параметр > 10 < производный оператор > 11 < составной оператор > 11

< выбирающий оператор > 12 < условный оператор > 12 < оператор варианта > 13

< элемент списка варианта > 13 < список меток варианта> 13 < конец > 13

< селектор оператора > 14 < метка варианта > 14 < оператор цикла > 15 < оператор цикла с параметром > 16 < параметр цикла > 16 < оператор цикла с предусловием > 16 < оператор цикла с постусловием > 17 < оператор присоединения > 17 < выражение > 18 < арифметическое выражение > 19

< операция сложения > 19 < слагаемое > 20

< операция умножения > 20 < множитель > 21

< литерное выражение > 22 < выражение перечислимого типа > 23 < выражение регулярного типа > 23 < выражение комбинированного типа > 24 < ссылочное выражение > 24 < множественное выражение > 25

< простое множественное выражение > 25 < операция над множествами > 25

< конструктор множества > 26 < список элементов > 26 < элемент > 26

< индексное выражение> 27 < логическое выражение > 28 < простое логическое выражение > 28 < логическое слагаемое > 29 < логический множитель > 30 < отношение > 31 < скалярное отношение > 33 < строковое отношение > 33 < операция сравнения > 34 < множественное отношение > 35

< операция > 35

< индекс > 36 < переменная > 37

< полная переменная > 37 < индексированная переменная > 37 < обозначение поля > 37 < переменная с указателем > 37 < буферная переменная > 37 < переменная-массив > 37 < переменная-запись > 37 < переменная-файл > 37 < ссылочная переменная > 37 < имя переменной > 37 < имя поля > 37

< описание переменных > 38 <список имен переменных> 38

< описание константы > 38 < константа > 39

< знак > 39 < описание типа > 40 < тип > 40

< структурированный тип > 40 < задание перечислимого типа > 42

< список идентификаторов > 42 < задание ограниченного типа > 42

Учебное пособие для групп преп. Матвеева Т.К. Стр 59 из 60

Синтаксические диаграммы языка Паскаль Стр 60 из 60

< задание ссылочного типа > 43 < параметр-функция > 51 < задание регулярного типа > 43 < параметр-процедура > 51

< список индексов > 43 < функция > 52 < задание комбинированного типа > 44 < список полей > 44

< список фактических параметров > 52

< секция записи > 45 < имя > 52 < идентификатор > 53

< список имен полей > 45 < метка оператора > 53 < задание множественного типа > 45 < задание файлового типа > 46

< число без знака > 54

< описание функции > 46 < целое без знака > 54

< заголовок функции > 47 < вещественное без знака > 55

< описание процедуры > 47 < число с фиксированное точкой > 55

< заголовок процедуры > 48 < число с плавающей точкой > 56 < литерная константа > 56

< совокупность формальных параметров > 48

< строковая константа > 57 < группа литер > 57

<список параметров> 48 < два символа > 57 < секция формальных параметров > 49 < параметры-значения > 50

< литера или кавычка > 57

< параметры-переменные > 50

top related