Читаем Учебное пособие по курсу «Нейроинформатика» полностью

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

<Тип переменной>::= {<Скалярный тип> | <Тип массива>[ <Целочисленноеконстантное выражение>] }

<Переменная типа Тип> — одно из следующих понятий:

 имя переменной, которая при описании переменных имела тип Тип

 имя элемента массива, если элементы массива имеют типТип

 результат приведения произвольной переменной или элемента массива к типу Тип.

Синтаксическая конструкция описания глобальных переменных (доступна только в языках описания компонентов учитель и контрастер):

<Описание глобальных переменных>::= Global<Список описаний однотипных переменных>

Синтаксические конструкции описания статических переменных

Статические переменные, как правило, служат для описания параметров компонентов нейрокомпьютера. Использование в именах переменных только символов латинского алфавита и цифр делает идентификаторы универсальными, но неудобными для всех пользователей, кроме англо-говорящих. Для удобства всех остальных пользователей в описании статических переменных предусмотрена возможность использовать дополнительные имена для статических переменных. Однако эти имена служат только для построения интерфейса и не могут быть использованы в описании тела соответствующего компонента. Кроме того, статической переменной можно при описании задать значение по умолчанию.

<Описание статических переменных>::= Static <Список описаний статических переменных>

<Список описаний статических переменных>::= <Описание статической переменной>; [<Список описаний статических переменных>]

<Описание статической переменной>::= <Тип переменной> <Имя переменной> [Name <Имя статической переменной>] [Default <Значение по умолчанию>]

<Имя статической переменной>::= <Строковая константа>

<Значение по умолчанию>::= <Константное выражение типа <Тип переменной>>

Синтаксические конструкции описания функций

<Описание функций>::= <Описание функции> [<Описание функций>]

<Описание функции>::= <Заголовок функции> <Описание переменных> <Описание меток> <Тело функции>

<Заголовок функции>::= Function<Имя функции>[( <Список формальных аргументов>)]: <Скалярный тип>;

<Описание меток>::= Label<Список меток>;

<Список меток>::= <Имя метки> [, <Список меток>]

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

<Тело функции>::= Begin<Составной оператор> End;

<Составной оператор>::= [<Имя метки>:] <Оператор> [; <Составной оператор>]

<Оператор>::= {<Оператор присваивания> | <Оператор ветвления> | <Оператор цикла> | <Оператор перехода> | <Операторные скобки>}

<Оператор присваивания>::= <Допустимое имя переменной> =<Выражение>

<Оператор ветвления>::= If<Логическое выражение> Then<Оператор> [Else<Оператор>]

<Оператор цикла>::= { <Цикл For> | <Цикл While> }

<Цикл For>::= For<Имя переменной> = <Целочисленное выражение> To<Целочисленное выражение> [By<Целочисленное выражение>] Do <Оператор>

<Цикл While>::= While<Логическое выражение> Do <Оператор>

<Оператор перехода>::= GoTo <Имя метки>

Перейти на страницу:

Похожие книги