- •Введение в object pascal
- •Лекция 1. Интегрированная Среда и Состав языка Object Pascal
- •1.1 Работа с окнами
- •1.2 Редактирование в Object Pascal
- •1.3 Команды меню
- •1.4 «Горячие» клавиши в Object Pascal
- •1.5 Состав языка
- •1.5.1 Алфавит и ключевые слова
- •1.5.2 Идентификаторы
- •1.5.3 Знаки операций, разделители, выражения и операторы
- •Лекция 2. Описательная часть программы
- •2.1 Структура программы
- •2.2 Описание констант
- •2.3 Описание и использование меток
- •2.4 Комментарии
- •Лекция 3. Описание переменных
- •3.1 Структура раздела описания переменных
- •3.2 Классификация типов данных
- •3.2.1 Целочисленные типы
- •3.2.2 Логический тип
- •3.2.3 Символьный тип
- •3.2.4 Вещественные типы
- •3.3 Описание типов пользователя
- •Лекция4. Выражения
- •4.1 Порядок выполнения операций
- •4.2 Выражения целого типа
- •4.3 Вещественные выражения
- •4.4 Логические выражения
- •Лекция 5. Программы Линейной структуры
- •5.1 Операторы ввода (Read, Readln)
- •5.2 Операторы вывода (Write, Writeln)
- •5.2.1 Форматирование численных значений
- •5.2.2 Вывод строковых, символьных и логических значений
- •5.2.3 Вывод вещественных значений в экспоненциальном формате
- •5.2.4 Расположение данного в поле вывода. Примеры
- •5.3 Оператор присваивания
- •5.4 Составной оператор
- •5.5 Стандартные процедуры и функции
- •5.5.1 Понятие процедуры и функции
- •5.5.2 Описание некоторых стандартных процедур и функций
- •5.5.3 Примеры программ линейной структуры
- •Лекция 6. Операторы ветвления (выбора)
- •6.1 Оператор ветвления if
- •6.2 Оператор множественного выбора (варианта) - case
- •Лекция 7. Операторы организации циклов
- •7.1 Цикл типа for
- •7.1.1 Прямая форма оператора for
- •7.1.2 Обратная форма оператора for
- •7.1.3 Советы для начинающих и примеры
- •7.2 Цикл типа While
- •7.3 Цикл типа Repeat... Until
- •7.4 Дополнительные операторы при программировании циклов
- •7.4.1 Досрочный выход из цикла - break
- •7.4.2 Переход к следующей итерации цикла - continue
- •Лекция 8. Массивы
- •8.1 Одномерные массивы
- •8.2 Сортировка одномерного массива
- •8.3 Массивы с большей размерностью
- •8.4 Констант-массивы
- •8.5 Генератор случайных чисел
- •8.5.1 Описание функции Random
- •8.5.2 Применение случайных чисел при работе с массивами
- •Лекция 9. Строки
- •9.1 Строковый тип
- •9.2 Операции над строками
- •Лекция 10. Записи и множества
- •10.1 Запись
- •10.2 Множества
- •11 Пользовательские процедуры и функции
- •11.1 Описание функции и процедуры
- •11.2 Понятие формальных и фактических параметров
- •11.3 Способы передачи параметров в подпрограмму через заголовок
- •11.4 Область видимости идентификаторов
- •12 Файлы
- •12.1 Основные понятия
- •12.2 Типизированные файлы
- •12.3 Текстовые файлы
Лекция 2. Описательная часть программы
2.1 Структура программы
Любая программа на языке Object Pascal состоит из двух частей: часть описаний и часть исполнительная. Исполнительная часть начинается с ключевого слова begin и заканчивается ключевым словом end с точкой (смотри ниже).
<Часть описаний>
Begin
<Исполнительная часть – тело программы>
End.
На этом рисунке и далее в угловых скобках будем приводить понятия (эти угловые скобки в программе не пишутся!).
Говоря о структуре программы отметим следующее. Некоторые описательные разделы могут отсутствовать в реальной программе, а также включаться повторно в текст программы. Их порядок и повторное включение зависят только от внутренней логики программы. Например, если в описании типа используется константа, то описание этой константы должно предшествовать описанию типа и т. д.
Структура программы:
program <Идентификатор — имя программы>;
const
<Раздед описания констант>
type
<Раздел описания типов>
var
<Раздел описания переменных>
label
<Раздел описания меток>
<Раздел описания процедур и функций>
begin
<Тело программы - операторы>
end.
Самая простая программа может не содержать оператора program, описательных разделов и иметь пустое тело. Однако, она может быть откомпилирована и запущена, например:
begin
end.
Следующая программа будет посложней. На рис.2.1 приведено окно Object Pascal с программой, которая получает два числа и выводит их сумму на экран. Программа содержит один описательный раздел - раздел описания переменных a и b целого типа.
Рис. 2.1. Окно Object Pascal с простой программой p3
После выбора в меню Run строки Run или нажатия клавиш Ctrl+F9 эта программа начнёт выполняться. На экране дисплея мы увидим окно пользователя с чёрным фоном и мигающим курсором в конце фразы «Введи два числа: ». Далее необходимо набрать на клавиатуре два произвольных целых числа через пробел и нажать клавишу Enter. После этого экран пользователя исчезнет и вы увидите опять экран с текстом программы. Чтобы увидеть экран пользователя с результатами вычислений требуется нажать клавиши Alt+ F5 (смотри рис. 2.2). Вернуться опять в экран с текстом программы можно нажав любую клавишу.
Рис. 2.2. Окно с результатами выполнения программы p3
Ясно, что программы могут быть очень сложными, содержать все разделы описания, процедуры и функции. По мере знакомства с языком мы их также будем использовать.
2.2 Описание констант
В программах часто встречаются неизменные по ходу исполнения программы величины, которые называются константами. Раздел описания констант начинается с ключевого слова Const.
Одни константы могут быть использованы при описании других констант, переменных и типов. Структура описания констант:
<идентификатор - имя константы> = <значение>;
Пример:
const
А = 75; Т = 3. 56; S = 'ABCD';
В этом примере приведена константа А целого типа, константа Т вещественного типа и константа S – строка из 4-х символов.
2.3 Описание и использование меток
Использование меток при программировании считается дурным тоном. Но бывают случаи, когда для использования меток существуют веские причины, например, начальный этап создания программы, когда автор еще не видит другого решения задачи. Идентификатор метки может начинаться с цифры. Раздел описания меток начинается с ключевого слова Label. Описание меток выглядит так:
Label
<список идентификаторов - имен меток, через запятую>;
Метки ставятся в том блоке программы, в котором они описываются. Метку можно поставить перед любым оператором. Отделяется метка от оператора двоеточием. Метка позволяет выполнить прямой переход на этот оператор.
Переход к метке осуществляется с помощью оператора перехода к метке:
Goto <Идентификатор — имя метки>;
Пример:
program p2_1;
label M1, M2, M3, M4;
begin
goto M1;
M3: Writeln('метка 3'); goto M4;
M2: Writeln('метка 2'); goto M3;
M1: Writeln('метка 1'); goto M2;
M4: end.
Программа выводит на экран сообщения по порядку: «метка 1» , «метка 2» , «метка 3», но операторы вывода в программе расположены в обратном порядке. Такой эффект достигается использованием меток и операторов перехода на метку goto.