Язык программирования Паскаль
Основные
понятия алгоритмического языка Состав языка. Обычный разговорный язык
состоит из четырех основных элементов: символов, слов, словосочетаний и предложений.
Алгоритмический язык содержит подобные элементы, только слова называют элементарными
конструкциями, словосочетания – выражениями, предложения – операторами.
Основные
символы языка – буквы, цифры и специальные символы составляют его алфавит.
Элементарные
конструкции языка Паскаль включают в себя имена, числа и строки.
ТИПЫ
ДАННЫХ
- Концепция типа
для данных В математике принято классифицировать переменные в соответствии
с некоторыми важными характеристиками. Производится строгое разграничение между
вещественными, комплексными и логическими переменными, между переменными, представляющими
отдельные значения и множество значений и так далее.
- Стандартные
типы данных К стандартным относятся целые, действительные, логические, символьный
и адресный типы
- Перечисляемый
тип данных представляет собой ограниченную упорядоченную последовательность
скалярных констант, составляющих данный тип. Значение каждой константы задается
ее именем. Имена отдельных констант отделяются друг от друга запятыми, а вся совокупность
констант, составляющих данный перечисляемый тип, заключается в круглые скобки.
- Интервальный тип данных
Отрезок любого порядкового типа может быть определен как интервальный или
ограниченный тип. Отрезок задается диапазоном от минимального до максимального
значения констант, разделенных двумя точками.
- Строки
Стандартный Паскаль допускает два способа хранения символьных массивов в памяти
ЭВМ: распакованный и упакованный. Распакованные массивы символов
хранятся в памяти ЭВМ по одному символу в машинном слове, упакованные – по одному
символу в байте.
- Понятие
множества в языке Паскаль основывается на математическом представлении о
множествах: это ограниченная совокупность различных элементов. Для построения
конкретного множественного типа используется перечисляемый или интервальный тип
данных.
- Запись
представляет собой совокупность ограниченного числа логически связанных компонент,
принадлежащих к разным типам. Компоненты записи называются полями, каждое из которых
определяется именем.
- Указатели
Операционная система MS – DOS все адресуемое пространство делит на сегменты.
Сегмент – это участок памяти размером 64 кбайт. Для задания адреса необходимо
определить адрес начала сегмента и смещение относительно начала сегмента. В Турбо
Паскале определен адресный тип Pointer – указатель.
Константы
Тип констант в языке Паскаль определяется по их виду: константы целого
типа – это целые числа, не содержащие десятичной точки, константы действительного
типа – действительные числа, логические константы – логические значения TRUE и
FALSE, символьные константы – либо строки длиной в один символ, либо конструкции
вида #K или ^K.
Переменные
Тип переменных определяется пользователем в разделе описания переменных
Выражение состоит из констант, переменных, указателей функций, знаков операций
и скобок. Выражение задает правило вычисления некоторого значения. Порядок вычисления
определяется старшинством (приоритетом) содержащихся в нем операций.
Операторы
- Оператор
присваивания Тип переменной и тип выражения должны совпадать кроме
случая, когда выражение относится к целому типу, а переменная – к действительному.
При этом происходит преобразование значения выражения к действительному типу.
Приведем некоторые примеры операторов присваивания
- Условный
оператор В Паскале есть четыре логических оператора – and, xor, or, not.
Эти логические операторы работают с логическими значениями (True и False), позволяя
комбинировать выражения отношений, булевские переменные и булевские выражения
- Циклические
конструкции в программах
Наряду с операторами (или группами операторов), которые могут выполняться в зависимости
от каких-либо условий, существуют еще и операторы, которые могут выполняться несколько
раз в одной и той же последовательности. Такой вид конструкции в программе известен
как цикл.
- Оператор
варианта (casе)
состоит из выражения (переключателя) и списка операторов, каждому из которых
предшествует одна или более констант (они называются константами выбора) или ключевое
слово else.
- Оператор
перехода Обычно операторы в программе выполняются в том порядке, в каком они
записаны. Оператор перехода прерывает естественный порядок выполнения
программы и указывает, что дальнейшее выполнение должно продолжаться, начиная
с оператора, помеченного меткой, указанной в операторе перехода.
Структура программы Программа на языке Паскаль состоит из заголовка, разделов
описаний и раздела операторов.
Процедуры
и функции Алгоритм решения задачи проектируется путем декомпозиции всей
задачи в отдельные подзадачи. Обычно подзадачи реализуются в виде подпрограмм.
Модуль
(UNIT) в Турбо Паскале – это особым образом оформленная библиотека подпрограмм.
Модуль в отличие от программы не может быть запущен на выполнение самостоятельно,
он может только участвовать в построении программ и других модулей.
Файлы Введение файлового типа в язык Паскаль вызвано необходимостью обеспечить
возможность работы с периферийными (внешними) устройствами ЭВМ, предназначенными
для ввода, вывода и хранения данных.
- Текстовые
файлы Особое место в языке Паскаль занимают текстовые файлы, компоненты
которых имеют символьный тип. Для описания текстовых файлов в языке определен
стандартный тип Тext:
- Компонентные
файлы Компонентный или типизированный файл – это файл с объявленным
типом его компонент. Компонентные файлы состоят из машинных представлений значений
переменных, они хранят данные в том же виде, что и память ЭВМ.
- Бестиповые
файлы позволяют записывать на диск произвольные участки памяти ЭВМ и считывать
их с диска в память. Операции обмена с бестиповыми файлами осуществляются с помощью
процедур BlokRead и BlockWrite. Кроме того, вводится расширенная
форма процедур Reset и Rewrite. В остальном принципы работы остаются такими же,
как и с компонентными файлами.
- Последовательный
и прямой доступ Смысл последовательного доступа заключается в том,
что в каждый момент времени доступна лишь одна компонента из всей последовательности.
Динамические переменные В отличие от таких статических переменных в программах,
написанных на языке Паскаль, могут быть созданы динамические переменные.
Основное свойство динамических переменных заключается в том, что они создаются
и память для них выделяется во время выполнения программы. Размещаются динамические
переменные в динамической области памяти (heap – области).
Элементы структурного программирования Структурированная программа (или
подпрограмма) – это программа, составленная из фиксированного множества базовых
конструкций. Рассмотрим основные определения и способы образования этих конструкций
в схемах алгоритмов.
Введение в обьектно-ориентированное программирование
Объекты
В основе того или
иного языка программирования лежит некоторая руководящая идея, оказывающая существенное
влияние на стиль соответствующих программ.
- Инкапсуляция
В Турбо Паскале средства объектно-ориентированного программирования связаны с
тремя зарезервированными словами: OBJECT, CONSTRUCTOR и DESTRUCTOR
и двумя стандартными директивами: PRIVATE и VIRTUAL.
- Наследование
Любой объект может быть объявлен потомком ранее описанного объекта. В этом
случае он наследует все данные и методы объекта-родителя и может дополнять их
своими данными и методами
- Полиморфизм
Свойство, позволяющее называть разные алгоритмические действия одним именем, называется
полиморфизмом.
- Динамические
объекты Объектные
переменные во многом подобны обычным переменным Турбо Паскаля, в частности, их
можно размещать в динамической памяти. Турбо Паскаль содержит средства, облегчающие
размещение объектных переменных в куче и их удаление из нее
- Закрытие
части объекта Обычно объекты описываются в отдельном модуле, в интерфейсной
части которого приводится объявление объекта, а в исполняемой части – описание
всех его методов. При желании часть инкапсулированных переменных и методов объекта
Вы можете объявить скрытыми от пользователей Вашего модуля.
Практические задачи на программирование