- •Программирование на языке Паскаль
- •Содержание
- •Введение. Структура программы. Типы данных
- •Структура программы в зыке Паскаль
- •Комментарии
- •Раздел описания переменных
- •Имена идентификаторов в языке Паскаль
- •Типы данных в языке Паскаль
- •Целые типы
- •Вещественные типы
- •Раздел описания констант
- •Оператор ввода
- •Составной оператор
- •Условный оператор
- •Выражения
- •Арифметические операции
- •Логические выражения
- •Логические операции
- •Приоритеты операций
- •Стандартные математические и арифметические функции
- •Структурированные операторы
- •Оператор выбораCase
- •Оператор циклаFor
- •Оператор циклаWhile
- •Inc(n); { Увеличение значения пременнойnна 1 }
- •Оператор циклаRepeat
- •Пользовательские порядковые и составные типы. Процедуры и функции
- •Раздел описания типов
- •Интервальный тип
- •Перечислимый тип
- •Тип массив
- •Строковый тип
- •Процедуры и функции для работы со строками
- •Типизированные константы
- •Процедуры и функции
- •Обращение к процедурам и функциям
- •Процедуры и функции. Процедурные типы. Тип указатель
- •МодификаторыVar иConst в описании формальных параметров
- •Локальность и область действия
- •Процедурные типы
- •Тип указатель
- •Нулевой указатель
- •Работа с текстовыми файлами. Тип запись. Алгоритмы сортировки
- •Файловые типы
- •Процедуры и функции для работы с текстовыми файлами
- •Стандартные текстовые файлы
- •Тип запись
- •Обращение к элементам записи
- •Алгоритмы сортировки
- •Алгоритмы сортировки
- •Алгоритмы сортировки сравнениями
- •Объектно-ориентированное программирование. Структура программного модуля
- •Тип данных «объект»
- •Тип данных «класс»
- •Классификация стилей программирования
- •Структура программного модуля
- •Основы визуального программирования
- •Элемент управления «Поле ввода»
- •Элемент управления «Кнопка»
- •Элемент «Метка»
- •Элемент «Группа переключателей»
- •0:ShowMessage('Выбран вариант 1');
- •Виды изображений
- •КлассTPicture
- •КлассTBitmap
- •ОператорWith
- •КлассTCanvas
- •Библиографический список
- •620002, Екатеринбург, Мира, 19
Оператор ввода
Синтаксис
ReadLn(<Список имен переменных>);
Оператор ReadLn вводит с клавиатуры значения указанных в списке переменных. Значения при вводе должны быть разделены пробелами. При несоответствии типов введенных значений с типами переменных выдается сообщение об ошибке.
Составной оператор
Синтаксис
BEGIN
<Оператор 1>;
<Оператор 2>;
∙ ∙ ∙
<Оператор N-1>;
<Оператор N>
END
Операторы внутри операторных скобок BEGIN END разделены точками с запятой. После последнего оператора точку с запятой ставить не требуется, хотя допустимо и ошибки не вызовет.
Действие составного оператора заключается в последовательном выполнении содержащихся в нем операторов.
Условный оператор
Синтаксис
IF<Логическое выражение>THEN<Оператор 1> [ELSE<Оператор 2>]
Если значение логического выражения является истинным, происходит выполнение оператора 1. Если же значение логического выражения ложно и присутствует ключевое слово ELSE, выполняется оператор 2. Если значение логического выражения ложно и ключевое словоELSE отсутствует, то ничего не происходит.
Пример
IF x<Min THEN Min:=x;
IF A>B THEN
A:=A-B
ELSE
IF B>A THEN
B:=B-A
ELSE
BEGIN
WriteLn('НОД = ',A);
Exit;
END;
Выражения
В простейшей форме определение выражения можно сформулировать так: выражениями являются константы и переменные, соединенные между собой знаками операций. В выражениях также можно использовать функции.
Арифметические операции
Операция |
Обозначение |
Описание |
Сложение |
+ |
Тип результата зависит от типов аргументов: для целых аргументов получается целый результат, а если хотя бы один из аргументов вещественный, результат тоже вещественный |
Вычитание |
– | |
Умножение |
* | |
Деление |
/ |
Результат всегда вещественный, даже если аргументы целые и делятся без остатка, например, 10/2 равно 5.0, а не 5 |
Целая часть от деления |
div |
Определены только для целых чисел, результат также целое число, например 13 div 5 = 2, 13mod 5 = 3 |
Остаток от деления |
mod |
Логические выражения
Логическими выражениями называются выражения, которые принимают одно из значений логического типа (Boolean): истина (True) или ложь (False). Логические выражения конструируются при помощи логических операций.
Логические операции
Отношения: =, <>, <, >, <=, >=. Определены для всех скалярных типов, а также для строковых.
Логические связки: NOT (не – отрицание),AND (и),OR (или),XOR (исключающее или). Определены для аргументов логического типа. Рассмотрим действие логических связок при помощи таблиц истинности. При этом будем обозначать истину (True) единицей, а ложь (False) нулем.
A |
NOT A |
0 |
1 |
1 |
0 |
A |
B |
A AND B |
A OR B |
A XOR B |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
Приоритеты операций
Вычисление значений любых выражений происходит с учетом приоритета операций.
Приоритет |
Операции |
1 (высший) |
@, not, – (отрицание) |
2 |
*, /, div, mod, and, shl, shr |
3 |
+, – (вычитание), or,xor |
4 (низший) |
=, <>, <, >, <=, >=, in |
Важно правильно записывать выражения в соответствии с этой таблицей приоритетов операций. Например, выражение A>0AND B>0 будет интерпретироваться как (A>(0AND B))>0, что вызовет ошибку, так как выражениеA>(0AND B) – логического типа, а 0 – числового. В данном случае выражение следует записывать так: (A>0)AND (B>0).