Файл: Основы программирования на языке Pascal.pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 06.04.2023

Просмотров: 260

Скачиваний: 2

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Введение

Каждый язык программирования имеет свой синтаксис, который определяет правила записи и состав допустимых конструкций языка. Смысл же каждой конструкции языка образует его семантику. Семантика обеспечивает пользователя языка смысловыми правилами применения и интерпретации конструкций языка. Запись алгоритма в терминах алгоритмического языка называется исходным текстом программы. При изучении языка программирования необходимо изучить, какие величины допускается использовать в данном языке, как они должны быть представлены в тексте программы, какие операции над этими величинами можно задавать, как эти операции записываются в соответствии с правилами языка, каковы правила объединения отдельных конструкций вычислительного процесса.

На сегодняшний день существует большое количество языков программирования. Они подразделяются на языки программирования низкого и высокого уровней, а также специализированные языки программирования (баз данных, скриптязыки). Терминология "низкий уровень" означает близость операторов языка к машинному коду. Наиболее используемый и популярный язык низкого уровня ассемблер. Каждый оператор языка представляет в виде мнемокодов команду микропроцессора, поэтому этот язык программирования называют машинно-ориентированным. Для каждого типа микропроцессора создаётся свой ассемблер, поддерживающий все его команды.

Терминология "высокий уровень" означает, что язык программирования приближен к мышлению человека. В них не учитываются особенности архитектуры конкретной модели компьютера, поэтому разрабатываемые программы легко переносятся на другие платформы. Разнообразие языков программирования обусловлено их специфическими особенностями и предназначением. Basic разработан в 60е годы как язык программирования для начинающих. Pascal, созданный в конце 70х для обучения программированию как систематической дисциплине. С для разработки программ системного назначения, обладающих преимуществами как языков программирования низкого уровня (компактность и эффективность разрабатываемых программ), так и преимуществами языков высокого уровня (независимость от машинных архитектур).

Первая версия Turbo Pascal появилась в 1983 году и использовалась недолго. Через год вышла в свет вторая версия, получившая широкое распространение. В 1985 году вышла третья версия языка, удобная в эксплуатации и более быстродействующая. В четвертой версии появился встроенный компилятор, а в пятой встроенный отладчик. Разработанная в 1989 году версия 5.5, позволила перейти к поддержке объектно-ориентированной технологии программирования. Turbo Pascal 6.0 был расширен поддержкой многодокументного интерфейса, обладал встроенным ассемблером, что позволяло эффективно выполнять процедуры работы с устройствами компьютера на низком уровне. В 1992 году фирма Borland выпускает два пакета Borland Pascal 7.0 и Turbo Pascal 7.0. Эти пакеты позволяют не только использовать в разработке программ объектно-ориентированную методологию, но и разрабатывать приложения с поддержкой защищённого режима работы микропроцессора, а также создавать приложения для работы под популярную операционную среду "Windows". Дальнейшее своё продолжение Pascal получил в визуальной среде, поддерживающей технологию быстрой разработки приложений RAD (Rapid Application Development) Delphi. Delphi одно из наиболее распространённых в настоящий момент средств разработки программных продуктов, объединяющее средства визуального проектирования и объектный Pascal. Поскольку Pascal предназначен, в первую очередь, для изучения программирования как дисциплины, то многие профессиональные программисты начинали свой путь именно с изучения программирования на языке Pascal.


Глава 1. ПРОГРАММИРОВАНИЕ НА ЯЗЫКЕ ПАСКАЛЬ

1.1 Описание языка Object Pascal

Турбо Паскаль был создан в 1983 году компанией Borland на базе Паскаль. От оригинала программа отличалась скоростью компиляции – она была значительно выше. Этот фактор позволил ей приобрести популярность среди программистов и учащихся 20 века, благодаря чему она была переработана 10 раз, и последняя ее версия – Turbo Pascal 7.1 – вышла в 1994 году. Этот язык считается уже устаревшим, и был заменен на Object Pascal.

Сама утилита состоит из нескольких элементов: компилятора Паскаль, функций для редактирования и работы над текстами и анти-багов. Дополнительные опции перечислены в рабочем окне Object Pascal и нужны для того, чтобы пользователю было легче освоить работу с ними.

У любой программы есть свои сильные и слабые стороны, Object Pascal тому не исключение. Преимущества:

  • высокая скорость компиляции;
  • возможность использовать вставки на машинно-ориентированном
    языке;
  • простота использования и встроенная обучающая база;
  • набор функций, позволяющих ускорить работу с утилитой;
  • поддержка нескольких видов программирования: структурного, объектно-ориентированного, и «сверху-вниз».

Недостатки:

  • устаревший язык программирования, который редко используется в современной практике;
  • наличие фундаментальных ошибок в работе утилиты, которые так и не были устранены.
  • Несмотря на преобладание плюсов, Pascal версии Turbo сейчас используется только в обучающих целях, да и то большинство школ уже перешли к преподаванию типа Object.

Все языки группы Паскаль имеют отличительные черты. Их основной особенностью считается четкая структуризация и типизация текстов программ.
Этот язык был первым, в котором была проведена подробная классификация
всех базовых понятий, благодаря чему пользователи делают меньше
ошибок.

Следующая его особенность – простой синтаксис, который позволяет понять текст программы даже тому, кто очень поверхностно знает принцип ее функционирования. Это упрощает процесс обучения и позволяет работать с Turbo Pascal, основываясь на примерах кодов, приведенных во встроенной справочной базе.

Программа, написанная на языке программирования Pascal,
состоит из заголовка, раздела описаний и тела программы (блока
операторов).


Для объявления заголовка необходимо указать слово Program, а затем название самой программы, например:

Program Programma;

Имеется возможность и вовсе не определять заголовок, что не будет являться ошибкой.

Раздел описания употребляется как общее обозначение, а входят в него следующие разделы:

1) Раздел описания модулей:

Uses <имя 1, имя 2, … >;

Для возможности использования многих функций и процедур необходимо подключить модули (или библиотеки), которые могут быть как стандартными, так и пользовательскими.

Пример:

Uses Crt, Graph;

2) Раздел описания меток:

Label <метка 1, метка 2,…>;

При помощи оператора Goto можно изменить ход выполнения программы, а для его работы нужно объявить метки в разделе Label. В качестве меток используются целые числа, либо идентификаторы.

3) Раздел описания констант:

Const <имя 1, имя 2, …> ;

Константе (не изменяющийся величине) можно присвоить значение посредством знака =, который будет отделять его от имени константы,
например:

Соnst

A = 10;

B = 0;

C = ‘C’;

Exit = ‘Exit’;

Char = оrd (‘B’) — ord (‘А’) + 1;

Тип константы зависит от ее значения, и может быть не только
простым, но и выражением, а также использовать некоторые стандартные
функции.

4) Раздел описания типов:

Type

<имя типа 1> = <определение типа 1>;

<имя типа 2> = <определение типа 2>; …

В разделе описания типов создаются пользовательские типы, которые как и стандартные можно использовать при объявлении переменных.

Пример:

type

degrees =1..40;

month=string[30];

var

mart: month;

monday: degrees;

5) Раздел описания переменных:

Var <имя 1, имя 2, …, имя N>: <тип>;

В разделе Var определяются те переменные, которые будут использоваться в программе.

Пример:

Var

A, B, C: Integer;

Number: Char;

Y, N: Boolean;

6) Раздел описания процедур и функций;

Процедуры и функции объявляются после раздела Var и перед телом главной программы. Данная тема требует особого подхода, и поэтому будет рассмотрена в одной из последующих статей.

Также стоит отметить, что разделы описаний, в случае их наличия,
должны располагаться именно в той последовательности, в которой они описаны выше.

Раздел операторов является телом программы и представляет собой составной оператор, начало которого обозначается словом Begin, а конец – End.. Заключенный в нем операторы заканчиваются символом. Без этого раздела программа не имеет ни какого смысла.


В итоге получилась следующая структура программы на Паскаль:

Program <имя программы>; { Заголовок программы }

Uses <имя 1, имя 2, … >; { Раздел описания модулей }

Label <метка 1, метка 2,…>; { Раздел описания меток }

Const <имя 1, имя 2,…>; { Раздел описания констант }

Type { Раздел описания типов }

<имя типа 1> = <определение типа 1>;

<имя типа 2> = <определение типа 2>;

Var <имя 1, имя 2,…>: <тип>; { Раздел описания переменных }

{Раздел описания процедур и функций}

Begin { Тело программы }

<операторы>

End.

Комментарии используются для пояснения определенного участка программы, и представляют собой любой текст, заключенный в фигурные скобки {..} или в (*..*). Они не могут включать в себя внутренние комментарии, но возможна конструкция (*..{..}..*). Также стоит отметить, что если после открывающей скобки следует знак $, то этот комментарий воспринимается как директива компилятора.

Не восприимчивость комментариев по отношению к компилятору делает их необязательными в программе, а их наличие лишь служит показателем хорошего тона.

1.2 Работа со строками в Object Pascal

Чтобы обработать строковую информацию, в предусмотрен строковый тип данных Паскаль. Строка в Паскале — это совокупность определенного числа символов (это число определяет длину строки). Представим синтаксис строки Паскаль:

var st:string[n];

var st:string;

где n означает максимально возможную длину строки (целое число от 1 до 255). В случае, когда этот параметр отсутствует, по умолчанию он равен 255. Строковые константы записывают в виде определенной программистом последовательности символов, которую ограничивают апострофами. Возможно также формировать строки, используя:

  • запись символов по десятичному коду (т.е. комбинация: «#» + код символа),
  • управляющие символы (т.е. комбинация: «^» + некоторые заглавные латинские буквы).

Примеры строк Паскаль:

‘Программа’

#23#45#67

‘pascal’^С^N

Пустой символ Паскаль обозначают двумя идущими подряд апострофами. Если же апостроф используется в строке в качестве литеры, то в процессе записи его удваивают.

Переменные, которые описаны в качестве строковых с разнообразными максимальными длинами, можно присвоить друг другу. Если же короткой переменной присвоить длинную переменную, лишние символы у длинной переменной отбросятся. Всяким строковым переменным можно присвоить выражения с типом char.


Прямой доступ к отдельным символам строки в Паскале определяется следующим образом: i-тый символ строковой переменной stroka записывают в виде stroka[i]. Например, если stroka=’Символ’, то stroka[1] — есть ‘С’, stroka[2] — ‘и’, stroka[3] — ‘м’ и т.д.

В Паскале над строками определена операция конкатенации (слияния строк), которая обозначается символом «+». Например:

a:=’Сегодня’;

b:=’ понедельник’;

c:=a+b;

В результате выполнения операции конкатенации переменной c присваивается значение ‘Сегодня понедельник’. Помимо операции конкатенации в Паскале над строками применяются операции сравнения:

< , > <> = =< =>

Две строки сравнивают справа налево, принимая во внимание коды
символов. В случае, когда одна из строк меньше по длине второй строки, то происходит замена недостающих символов короткой строки символом, имеющим код 0.

1.3 Работа с файлами в Object Pascal

В язык Паскаль выделяются данные файлового типа, которые
служат для работы с информацией, расположенной на внешних устройствах. Эта информация формируется во внешней памяти компьютера, образуя некоторую область, называемую файлом. Файлы имеют имя и представляют собой совокупность однотипных элементов. Обычно они применяются, в
случаях большого объема данных, долгосрочного хранения, либо
необходимости предоставления доступа нескольким приложениям к одной и той же информации.

Файлы принято разделять на физические и логические. Физические файлы имеют имя, и располагаются на съемном носителе, а логические это те переменные файлового типа, которые их представляют в программе.

В Паскале различают следующие три вида файлов (в скобках описаны ключевые слова для инициализации файловой переменной):

  • текстовые файлы (text);
  • типизированные (file of <тип>);
  • бестиповые (file).

Рассмотрим основные операции для работы с файлами.

  1. Создание файла: Assign(<имя файловой переменной>, <имя
    файла>).

Процедура Assign связывает переменную файлового типа с физическим файлом. Например, установить соответствие между переменной Fil и текстовым файлом lot, расположенном на диске D, можно так:

Assign(Fil, ‘D:\lot.txt’)

2. Режим чтения: Reset(<имя файловой переменной>).

Процедура Reset открывает файл в режиме чтения, после чего оператором Read(<файловая переменная>, <считываемый элемент>) можно осуществить последовательное считывание элементов в программу.