- •Текстовый редактор
- •Прогон и отладка программы
- •Справочная служба Турбо Паскаля
- •Строка
- •Строка
- •Задание 2. Разветвления
- •Простейшие циклы
- •Вложенные циклы
- •Примечания
- •Строка
- •Процедуры и функции
- •Процедуры ввода
- •Обозначение
- •Представим определение языка Показушка в расширенной форме Бэкуса-Наура
- •Предложение
- •Синтаксис Паскаля
- •Задание 14
- •Операторы Паскаля
- •Задание 15
- •Новые типы данных. Определение типа. Диапазоны.
7.Марка легкового автомобиля.
8.Марка компьютера.
9.Номер группы в ВСГТУ.
10.Номер зачетной книжки в ВСГТУ.
11.Регалии ученого.
12.Номер телефона.
13.Марка холодильника.
14.Имя файла в компьтерной системе.
15.Имя директории в компьютерной системе.
16.Дворянские титулы в царской России.
Пользуясь полученными синтаксическими диаграммами и РБНФ-выражениями, приведите пример и выполните его синтаксический и РБНФ анализ.
Синтаксис Паскаля
Лексемы и выражения
Программа на Паскале состоит из лексем и символовразделителей. В лексемы Паскаля входят специальные символы, служебные слова, идентификаторы, числа и строки символов (литералы) (рис.2).
Символами-разделителями считаются пробелы, концы строк (разделители строк) и комментарии. Внутри лексем ни разделители, ни их части встречаться не могут. Между двумя следующими друг за другом идентификаторами, служебными словами или числами должен быть по крайней мере один разделитель.
К специальным символам относятся +, -, *, /, ,, :, ;, =, <>, <, <=, >, >=, :=, .., ^, (, ), [, ]. Специальные символы, состоящие из двух символов, не допускают «вклинивания» разделителей.
Служебные слова (или зарезервированные слова) в рукописных программах обычно подчеркиваются, чтобы их легче было воспринимать как единые символы с фиксированным
смыслом. Использование этих слов в каком-либо другом значении кроме того, которое зафиксировано в определении Паскаля нельзя; в частности, эти слова не употребляются в качестве идентификаторов. Всего их 35 (program, begin, end, if, while и так далее).
Слова, используемые для наименования любых объектов на Паскале, называются идентификаторами. Они должны начинаться с буквы, за которой могут следовать в любой комбинации любое число букв и цифр.
Различают продопреленные идентификаторы и идентификаторы, определенные программистом. Предопределенный идентификатор имеет сдандартный смысл и входит в описание языка (write, read, cos, true и так далее). Идентификаторы, определенные программистом – это идентификаторы, смысл которых определен непосредственно в программе (имена переменных, констант, процедур, функций, программы и так далее).
Для чисел, обозначающих целые или вещественные значения, используется десятичная нотация. Перед любым числом может стоять знак (+ или -). В числе не допускается никаких запятых. Вещественное число записывается с десятичной точкой или с масштабным множителем (порядком), можно с тем, и с другим. Буква Е (или е), за которой следует порядок, читается как «умножить на десять в степени». Если вещественное число содержит десятичную точку, то перед нею и после нее должно быть по крайней мере по одной цифре.
Заключенные в апострофы (одиночные кавычки) последовательность символов называется строками или литералом. Если нужно включить в строку сам апостоф, то он записывается дважды.
Выражение задает порядок вычисления значения, основанный на иерархическом принципе и реализует обычные правила вычисления слева направо и по старшенству операций, аналогично математике. Выражения состоят из множителей,
53