
- •Основные элементы схем алгоритма
- •Основные элементы схем алгоритма
- •1.1. Порядковые
- •Лексическая структура языка.
- •Математические операции
- •Понятие программного продукта
- •Содержание документа
- •Вопрос 19, но с определением плюс или минус.
- •Константы
- •Типизированные константы
- •2.2. Структура и способы описания языков программирования высокого уровня
- •3.1 Оператор присваивания и выражения
- •3.2 Операторы процедур. Ввод/вывод информации
- •3.3 Оператор перехода goto
- •4. Структурные операторы. Организация ветвлений и циклов
- •4.1 Составной и пустой операторы
- •4.2 Организация ветвлений. Операторы выбора
- •4.3 Организация циклов. Операторы повторения
- •3.1 Оператор присваивания и выражения
- •3.2 Операторы процедур. Ввод/вывод информации
- •4.1 Составной и пустой операторы
- •Общая форма записи цикла со счетчиком
- •Доступ к элементам массива
- •Изменение значения некоторых элементов
- •Нахождение номеров элементов с заданным свойством
- •Понятие структуры
- •Массив – однородная совокупность элементов
- •Индекс массива
- •Ввод массива Паскаля
- •Вывод массива Паскаля
- •Записи с вариантами
- •1. Введение
- •1.1. Интерпретаторы
- •1.2. Компиляторы
- •2. Классификация языков программирования
Лексическая структура языка.
Символы из алфавита языка используются для построения базовых элементов Pascal-программ - лексем. Лексема - минимальная единица языка, имеющая самостоятельный смысл. В Turbo Pascal имеются следующие классы лексем: 1. Служебные (зарезервированные) слова. Это ограниченная группа слов, построенных из букв. Каждое служебное слово представляет собой неделимое образование, смысл которого фиксирован в языке. Служебные слова НЕЛЬЗЯ использовать в качестве имен, вводимых программистом (т.е. в качестве идентификаторов переменных, констант и т.д.). Все 55 служебных слов языка представлены ниже.
absolute |
array |
and |
asm |
assembler |
begin |
case |
const |
constructor |
destructor |
div |
downto |
else |
end |
external |
file |
for |
forward |
function |
goto |
if |
implementation |
in |
inline |
interface |
interrupt |
label |
mod |
nil |
not |
object |
of |
or |
packed |
private |
procedure |
program |
record |
repeat |
set |
shl |
shr |
string |
then |
to |
type |
unit |
until |
uses |
var |
virtual |
while |
with |
xor |
|
Заметим, что синтаксис языка Turbo Pascal на самом деле допускает использование некоторых служебных слов в качестве идентификаторов (к числу таких слов относятся assembler, external, forward, interrupt, private, virtual). Строго говоря, эти слова называются в языке директивами. Однако в целях большей ясности программ использование директив в качестве идентификаторов не рекомендуется.
2. Идентификаторы (имена). Идентификаторы вводятся для обозначения в программе переменных, констант, типов, меток, процедур и функций и формируются из букв и цифр, но может начинаться только с буквы.
Длина идентификатора может быть произвольной, однако компилятор воспринимает только ПЕРВЫЕ 63 его символа.
Важно помнить, что в языке Turbo Pascal соответствующие заглавные и строчные буквы в идентификаторах и служебных словах НЕ РАЗЛИЧАЮТСЯ. Таким образом, следующие три идентификатора обозначают одну и ту же переменную:
3. Изображения. Эта группа лексем обозначает числа, символьные строки и некоторые другие значения. Правила построения изображений будут приведены в соответствующих разделах.
4. Знаки операций формируются из одного или нескольких специальных символов и предназначены для задания действий по преобразованию данных и вычислению значений.
5. Разделители также формируются из специальных символов и в основном используются для повышения наглядности текстов программ. Примерами разделителей могут служить следующие конструкции:
; : = ( .
В текстах Pascal-программ допускаются фрагменты пояснительного характера - комментарии. Наличие комментариев не изменяет смысл программы и не влияет на ее выполнение.
В Turbo Pascal комментарии представляют собой произвольную последовательность символов (не обязательно из алфавита языка; то есть допускаются и русские буквы), заключенную в фигурные скобки '{' и ')' или в разделители вида ' (*' и '*)’ например:
{Это комментарий}
(*А это длинный комментарий,
нескольких строках*)
(*Вложенный комментарий*) Комментарий)
Комментарий может находиться МЕЖДУ ЛЮБЫМИ ДВУМЯ ЛЕКСЕМАМИ программы.
Важную роль в тексте Pascal-программы играет символ, не имеющий специального графического изображения, - пробел Символы пробелов используются для отделения лексем друг от друга в тех случаях, когда слитное написание двух или более лексем может исказить смысл программы. В остальных случаях использование пробелов необязательно и служит целям наглядности, способствуя лучшему внешнему виду программ. Можно сказать, что пробелы, так же, как и комментарии, могут (в любом количестве) находиться между любыми двумя лексемами программы.
Выражения
Выражение задает правило вычисления некоторого значения. Выражение состоит из констант, переменных, указателей функций, знаков операций и скобок.