Файл: «Основы программирования на языке Pascal»(Теоретические основы языка Pascal).pdf

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

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

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

Добавлен: 28.03.2023

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

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

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

ВВЕДЕНИЕ

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

Язык Паскаль – один из самых понятных и простых в изучении. Он содержит средства для создания программ любой сложности, что и обусловило выбор этого языка в качестве одного из основных для обучения программированию в образовательных учреждениях.

Целью курсовой работы является рассмотрение особенностей программирования на языке Pascal.

Задачи работы:

Изучить историю создания языка Pascal.

Рассмотреть основные элементы и структура программы.

Изучить организацию и описание данных.

Изучить программирование линейных, разветвляющихся и ветвящихся процессов.

Изучить программирование циклических процессов.

1. Теоретические основы языка Pascal

1.1. История создания языка Pascal

Pascal был создан на базе ALGOL, языка программирования, который предназначался для научных вычислений. После встречи в Цюрихе Международный комитет разработал ALGOL как независимый от платформы язык. Это дало его разработчикам относительную свободу действий над функциями, которые они могли бы выполнить в ALGOL, но также затрудняло создание компиляторов для него. В то время на многих компьютерах отсутствовали аппаратные функции, которые мы сейчас считаем стандартными. [1]

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


В 1960-е годы несколько компьютерных ученых работали над расширением ALGOL. Одним из них был доктор Никлаус Вирт из Швейцарского федерального технологического института (ETH-Zurich), член первоначальной группы, создавшей ALGOL. В 1971 году он опубликовал свои работы для высокоструктурированного языка, который во многом напоминал ALGOL. Он назвал его Паскалем в честь французского философа и математика XVII века.

Основная функция Pascal - работа с данными, что предоставляет программисту возможность определять пользовательские типы данных. Благодаря этому происходит строгая проверка данных, что предотвращает смешивание типов данных. Изначально Паскаль был предназначен для преподавания. Pascal является более простым, в отличие от FORTRAN, написанный на нем код очень похож на естественный язык, поэтому его легко понять обычному пользователю [12, c.109].

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

Во-первых, Служба Образовательных Испытаний, компания, которая пишет и администрирует главный вступительный экзамен в колледже в Соединенных Штатах, решила добавить экзамен по информатике, для этого экзамена они выбрал язык Pascal. Из-за этого ученики средних школ, а также студенты колледжа начали изучать именно данный язык программирования. Pascal оставался официальным языком экзаменов в США до 1999 года, но в дальнейшем был заменен C ++, а далее - на Java.

Во-вторых, небольшая компания Borland International выпустила компилятор Turbo Pascal для персонального компьютера IBM. Компилятор был разработан Андерсом Хейльсбергом, который позже возглавил группу в Microsoft, разработавшую C # и (повторно) представившую Managed Code обратно в мир вычислений.

Turbo Pascal был действительно революционным. Были внесены некоторые изменения в стандартный Pascal, но они были незначительными и помогли ему достичь своего наибольшего преимущества: скорости. Turbo Pascal составлен с головокружительной скоростью: несколько тысяч строк в минуту. В то время доступные компиляторы для платформы ПК были медленными и «раздутыми». Создание Turbo Pascal являлось в то время «глотком свежего воздуха». Вскоре Turbo Pascal стал стандартом де-факто для программирования на ПК.

В дальнейшем Apple выпустила серию компьютеров Macintosh. Поскольку Pascal был выдающимся структурированным языком программирования того времени, Apple выбрала Pascal в качестве стандартного языка программирования для Mac. Программисты получили API и пример кода для программирования Mac, которые были написаны на языке Pascal.


Начиная с версии 1.0 до 7.0 Turbo Pascal, Borland (создатель разработческих инструментов Turbo Pascal и Delphi) продолжал расширять язык. Одним из немаловажных замечаний в оригинальной версии Pascal было отсутствие отдельной компиляции для модулей. Вирт даже создал новый язык программирования Modula-2 для решения этой проблемы. Borland добавила модули в Pascal с функциями своих устройств.

В версию 7.0 было добавлено множество дополнительных функций. Одним из них был DPMI (DOS Protected Mode Interface), способ запуска программ DOS в защищенном режиме, получение дополнительной скорости и разрыв без барьера 640K для доступа [5, c. 67].

На данный момент, язык программирования Pascal является общепризнанным языком при освоении различных ступеней образования, который сочетает в себе основные свойства алгоритмического языка программирования высокого уровня и доступную форму, позволяющую начинающему программисту освоить технологию создания программы. Также, существуют пакеты, основанные на использовании Pascal (Delphi, компонентный Pascal), использующие современный объектноориентированный подход.

Однако, как язык разработки, в последнее время Pascal теряет свою популярность. На 2018 год он занимал 128 место в рейтинге языков программирования TIOBE. Все большую популярность приобретает web- программирование [4, c. 89]. Как видно на рисунке 1, в период с 2008 по 2013 год язык Pascal входил в ТОП-20 языков программирования, но в последние годы произошло его стремительное падение на низкую позицию.

Pascal отличается легким синтаксисом языка, а, как известно, чем сложнее грамматика языка и чем больше вариантов предполагают семантические правила - тем больше проходов будет выполнять компилятор. Именно поэтому компиляторы с языка Pascal работают очень быстро [5, c. 16].

Рисунок 1 – Pascal в рейтинге языков TIOBE

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

1.2. Основные элементы и структура программы

Язык программирования Паскаль является языком программирования высокого уровня или алгоритмическим языком (т.е. языком, специально разработанным для записи алгоритмов вычислений). Особенностью таких языков как Бейсик, Паскаль по сравнению с большинством другими алгоритмическими языками, является их ориентация на диалоговый процесс программирования.


Алфавит языка Паскаль - набор символов, разрешенных к использованию и воспринимаемых компилятором, в соответствии с их смысловым значением может быть разбит на следующие группы:

1) буквы латинского алфавита (прописные и заглавные): A,B, ... ,Z и a,b,...,z

2) арабские цифры (от 0 до 9);

3) знаки арифметических операций:

+ - сложение, - - вычитание,

* - умножение / - деление,

div - деление нацело с отбрасыванием остатка,

mod - нахождение остатка от деления нацело;

4) знаки операций отношения:

= - равно, <> - не равно,

> - больше, < - меньше,

>= - больше или равно, <= - меньше или равно;

5). знаки логических операций:

NOT - отрицание, OR - логическое сложение,

AND - логическое умножение;

6) знаки операции присваивания := ;

7) специальные символы:

- пробел (разделитель) _ - подчеркивания

( - открывающая круглая скобка

) - закрывающая круглая скобка

[ - открывающая квадратная скобка

] - закрывающая квадратная скобка

- открывающая фигурная скобка

- закрывающая фигурная скобка

, - запятая

. - точка

; - точка с запятой

' - апостроф

: - двоеточие

8) ключевые слова:

AND - и, ARRAY - массив,

BEGIN - начало, CASE - вариант,

CONST - константа, DIV - деление нацело,

DO - выполнять, DOWNTO - уменьшать до,

ELSE - иначе, END - конец,

FILE - файл, FOR - для,

FORWARD вперед, FUNCTION - функция,

GOTO - переход на, IF - если,

IN - в, LABEL - метка,

MOD - модуль, NOT - не,

OF - из, OR - или,

PROCEDURE процедура, PROGRAM - программа,

RECORD запись, REPEAT - повторить,

SET - множество, STRING - строка,

THEN - то, TO - к,

TYPE - тип, UNIT - модуль,

UNTIL - до, USES - используемые,

VAR - переменная, WHILE - пока,

WITH - с, XOR - арифмет. или.

9) стандартные идентификаторы (имена):

константы FALSE, TRUE и MAXINT;

типы BOOLEAN, INTEGER, REAL и CHAR;

файлы INPUT и OUTPUT;

процедуры READ, READLN, WRITE, WRITELN, GET, PUT, REWRITE, NEW и RESET;

10) стандартные математические функции

Функция

Обращение

Аргумент

Функция

!х!

x2

abs(x)

sqr(x)

R и I

R и I

R и I

R и I

Sin x

Cos x

ex

Ln x

x

Arctg x

sin(x)

cos(x)

exp(x)

ln(x)

sqrt(x)

arctan(x)

R и I

R

Употребление букв русского алфавита в алгоритмическом языке Паскаль, ограничено по сравнению с английскими буквами, использованием как элементов символьных констант и в комментариях.


Программа на языке Паскаль состоит из двух основных частей

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

В структуре программы можно выделить заголовок и собственно программу, которая может содержать максимально шесть разделов:

- описание меток;

- описание констант;

- определение типов;

- описание переменных;

- описание функций и процедур;

- раздел операторов.

Раздел операторов заключается в операторные скобки, т.е. BEGIN...END. Любой раздел, кроме последнего, может отсутствовать. Разделителями между разделами и операторами служит точка с запятой. В конце программы должна стоять точка. Заголовок программы записывается в первой строке программы и начинается с ключевого слова program после которого указывается имя программы и связь программы с исходными данными и результатами обработки (т.е. файлы, доступные программе). В качестве имен файлов используются стандартные имена INPUT и OUTPUT.

program drev( input,output);

Кроме этого в любое место программы могут быть включены комментарии, при этом смысл программы не меняется. Комментарии заключатся в фигурные скобки. Если в системе нет фигурных скобок, то вместо них используются пары символов (* и *).

(* ПРИМЕР1 КОММЕНТАРИЯ НА ПАСКАЛЕ *)

{ ПРИМЕР2 КОММЕНТАРИЯ НА ПАСКАЛЕ }

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

Основными этапами решения любой задачи средствами языка программирования на ПК являются:

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

Результат 1-го этапа - спецификация, которая представляет собой набор требований к программному продукту.

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