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

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

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

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

Добавлен: 22.04.2023

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

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

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

Введение

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

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

Все языки программирования эволюционируют в течение своей жизни. Это не обошло стороной и язык Паскаль. Команда ученых Стэнфордского университета под руководством Лоуренса Гордона Теслера разработала Object Pascal .

Тремя годами ранее компания Borland выпустила продукт под названием Turbo pascal. А в 1989 году объектное расширение Turbo pascal 5.5.

Среда разработки Turbo pascal 5.5 в свое время считалась одной из лучших. Она принесла многомиллионную прибыль Андерсу Хейлсбергу - разработчику этого программного обеспечения и основателю компании Borland.

В свою бытность Turbo pascal решал множество целей программистов.

Линейное программирование оптимальное решение задач, реализуемых на Turbo pascal.

Разработка Turbo pascal прекратилась в 1995 году в связи с выпуском новой платформы для разработки Delphi. Delphi - это модернизированная версия Turbo pascal c уклоном на объектно-ориентированное программирование.

Объектно-ориентированное программирование используется как для создания оболочек для программ, так и для создания самостоятельного программного обеспечения.

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

Веб студия Москва внедряет приложения, пользовательские интерфейсы и сайты, созданные при помощи объектно-ориентированных языков программирования.

Отличие Turbo pascal от других языков программирования в том, что он имеет возможность интеграции с низкоуровневым языком программирования Ассемблер. Так же Turbo pascal отличается высокой скорость компиляции и имеет превосходный отладчик. Основным недостатком языка программирования является особенность работы компилятора. Он работает только с реальным режимом DOS, который уже практически не используется.

Turbo pascal, Delphi и другие языки, в том числе и объектно-ориентированные языки - это шаг к языкам программирования высокого уровня. Мечта каждого программиста в мире заключена в желании научить машину понимать язык человека без привлечения интерпретаторов, разработать быстродействующий искусственный интеллект для компьютеров.


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

Для достижения данной цели необходимо решить следующие задачи:

- рассмотреть истории языка Паскаль;

- исследовать синтаксис, семантику и прагматику языка программирования;

- изучить пример программ на Паскале;

- исследовать возведение в степень в языке программирования Паскаль.

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

Глава 1. Введение в язык программирования Паскаль

1.1 История языка Паскаль.

Само названия языка - "Паскаль" - возникло в честь одного из великих французских математиков и физиков Блеза Паскаля (1623-1662). Немного из истории жизни французского мыслителя. Блез Паскаль родился в семье известного математика Этьена Паскаля. Отличительная черта всех его родных - необыкновенная одаренность. У него было две сестры: у старшей сестры Жильберты были в большей степени развиты математические способности и литературный талант, а у младшей сестры Жаклины - артистический дар. Свое детство Блез Паскаль провел в Париже, школу никогда не посещал. Единственный учитель, которого Паскаль признавал, был его отец Этьен. В четырехлетнем возрасте Блез уже умел читать и писать, начал интересоваться эвклидовой геометрией, а в 15 лет уже на равных мог обсуждать с известными на тот момент парижскими учеными сложнейшие математические задачи. Из юноши Паскаля вырастал гениальный математик .

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

Этот арифмометр прославил Блеза Паскаля во всех западных странах. Толпы народов со старого света направлялись в Люксембургский дворец (Париж), чтобы лицезреть это уникальное приспособление того времени[1].

А теперь вернемся к истории языка Паскаль. В 50-е годы XX века появились первые языки программирования высокого уровня: фортран, кобол и алгол. фортран и кобол они существуют и по сей день, а вот алгол как раз и стал родоначальником языка программирования паскаль. Первая версия алгола появилась в 1958 году, разработчиком которого был создатель фортрана Джон Бэкус. Последующими версиями языка АЛГОЛ стали АЛГОЛ-60 и АЛГОЛ-68. Однако из-за громоздкости языков АЛГОЛ-60 и АЛГОЛ-68 создавались большие трудности. Поэтому в 1965 году Международная федерация по обработке информации предложила проект нескольким специалистам ЭВМ. Необходимо было создать новый язык программирования - преемник АЛГОЛа-60. В этом проекте и принял участие будущий создатель языка программирования Паскаль - Николас Вирт, швейцарский ученый, на тот момент доцент факультета информатики Стэнфордского университета. Николас Вирт начал разрабатывать проект АЛГОЛ-W . Целью проекта было обучение студентов различным методам: "структурное программирование", "программирование сверху вниз" и др. В 1970 году произошли два великих события:


- появление операционной системы UNIX

- появление нового языка программирования.

Николас Вирт назвал новый язык программирования в честь французского математика XVII века Блеза Паскаля, поскольку Паскаль создал вычислительное устройство (паскалево колесо). Первая версия нового языка программирования вышла на компьютере CDC 6000.

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

Язык в естественной форме отразил самые важные современные концепции технологии разработки программ.

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

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

Паскаль весьма технологичен для реализации почти для всех (в том числе нетрадиционных) машинных текстур. Существует интересное сравнение: разработка Паскаль-транслятора почти не превышает по трудоемкости хорошую дипломную работу выпускника вуза.

Паскаль – язык программирования, созданный в 70-х годах швейцарским профессором Николаусом Виртом специально для обучения программированию. Им же был написан ряд книг, в которых подробно рассматриваются возможности этого языка и его применение для решения многих «классических» в области программирования задач. Название языку было дано в честь выдающегося французского математика Блеза Паскаля.

Язык Паскаль характеризуется чёткой структурой программы, простотой и ясностью конструкций. С момента создания Паскаль был универсален и пригоден для решения широкого круга задач[2]. Строгая типизация языка значительно сокращает количество ошибок в программах.

Существует три стандарта языка:

1. Нерасширенный Паскаль (Unextended Pascal) был разработан в 1983 году и практически полностью совпадает с описанием языка по Вирту.

2. Расширенный Паскаль (Extended Pascal) содержит расширения, затрагивающие модульное программирование (отдельная компиляция модулей, импорт-экспорт подпрограмм, интерфейсная часть и реализация) и дополнен рядом процедур и функций (прямой доступ к файлам, работа со строками и др.).

3. Объектный Паскаль (Object Pascal) принят в 1993 г. Он поддерживает классы, обладающие свойствами и методами, наследование классов, переопределение методов у потомков (полиморфизм) и другие атрибуты объектно-ориентированного программирования. Начиная со среды разработки Delphi 7.0, в официальных документах Borland стала использовать название Delphi для обозначения языка Object Pascal.


Реализации языка:

1. Для операционной системы MS-DOS самое большое распространение приобрела реализация языка Паскаль фирмы Borland под названием Turbo Pascal (первая версия языка появилась в 1983 году).

2. Borland Pascal включает в себя более дешёвый и менее мощный Turbo Pascal и, кроме того позволяет создавать программы как под реальный, так и под защищённый 16-битный режим DOS, а так же программы для Windows. В нем открыты исходные тексты системных библиотек и функций времени выполнения.

3. Delphi – интегрированная среда разработки ПО для Microsoft Windows на языке Delphi, созданная первоначально фирмой Borland и на данный момент принадлежащая и разрабатываемая Embarcadero Technologies.

4. Free Pascal – свободно распространяемый компилятор языка программирования Pascal с ориентацией на Object Pascal.

5. Lazarus – свободно распространяемая интегрированная Delphi-подобная среда разработки программного обеспечения для компилятора Free Pascal, предоставляющая возможности кроссплатформенной разработки приложений.

6. PascalABC – система, представляющая собой интерпретатор языка программирования Паскаль с интегрированной оболочкой. Создавалась как учебная среда программирования. Pascal ABC и PascalABC.NET всех версий является свободно распространяемым программным обеспечением .

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

1.2 Понятия синтаксиса, семантики и прагматики языка программирования.

Разработка программы состоит из следующих этапов:

- Создание или редактирование текста программы.

- Компиляция – перевод программы с языка высокого уровня в машинно-ориентированные коды.

- Исполнение откомпилированного файла.

- Тестирование и отладка .

Компиляцию программы выполняет особая программа, называемая компилятором.

Этапы компиляции:

- Лексический анализ.

- Синтаксический анализ.

- Семантический анализ.

- Генерация промежуточного кода.

- Оптимизация кода.


- Генерация результирующего машинного кода.

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

В ходе синтаксического анализа проверяется правильность записи операторов в соответствии с правилами языка. Ошибки, выявленные компилятором во время лексического и синтаксического анализа, называются синтаксическими ошибками[3].

Семантика языка программирования – это система правил определения поведения отдельных языковых конструкций. Семантика определяет смысловое значение предложений языка. Не все семантические ошибки могут быть выявлены компилятором. Например, запись выражения в виде a/b*c не вызовет ошибки, хотя и является неправильной, исходя из приоритета выполнения операций. В ходе семантического анализа компилятор проверяет соответствие типов и допустимость операндов в операторах. Так попытка изменить значение константы, которая по определению является неизменяемым значением, приведет к семантической ошибке. Использование типа данных, недопустимого в данной конструкции, или несоответствие типов формальных и фактических параметров процедуры или функции, так же является семантической ошибкой.

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

Из-за существования алгоритмически неразрешимых задач предмет прагматики становится несколько расплывчатым и неопределенным – нельзя в общем случае дать никаких рекомендаций, которые от постановки задачи гарантированно приводили бы к ее решению. Кроме того, из-за разнообразия задач, решаемых с помощью компьютера, те рекомендации, которые могут быть даны, либо носят чересчур общий характер, либо, наоборот, слишком конкретны, относятся к узкому классу задач. Теория программирования, хотя и может гордиться рядом значительных достижений, ориентирована больше на разработчиков алгоритмических языков и программного обеспечения ЭВМ, чем на пользователей. Многие ее рекомендации представляют собой лишь постановки задач, решение которых потребует еще многих лет труда системных программистов, если вообще когда-либо будет достигнуто. Поэтому большую роль в овладении навыками составления программ играет разбор примеров разной степени сложности из разных классов задач.