Раздел I - Теоретическая часть

Курсовая работа

по дисциплине «Программирование и основы алгоритмизации»

Выполнил: студент группы

Садыков Айрат Ильдусович

№ зачетной книжки

Проверил: доцент

Грошев А.В.

г. Набережные Челны

2014 г.

Содержание

1. Введение................................................................................................3

Раздел I Теоретическая часть.................................................................................5

2. Программа простейший калькулятор...............................................6

Раздел II Практическая часть...............................................................................10

3. Вычисление значения выражений....................................................16

4. Вычисление сумм ряда чисел...........................................................21

5. Вычисление системы функций. Логическая развилка……................22

6. Заключение........................................................................................25

7. Список использованной литературы..............................................,28

Введение

Программирование — в обычном понимании, это процесс создания компьютерных программ. Программированием также называют настройку электронных устройств и программно-аппаратных комплексов (например, программирование цифровых АТС, программирование бытовых приборов конечным пользователем, запись информации в ПЗУ). Разработку логической схемы для ПЛИС тоже называют программированием. В общем понимании, программирование - это процесс описания функционирования устройства, который может быть выражен либо в структуре самого устройства, либо в виде набора инструкций. Программирование сочетает в себе элементы науки (логика, математика, информатика, кибернетика), инженерной дисциплины, и искусства (авторской творческой деятельности).

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

В более широком смысле под программированием понимают весь спектр активностей, связанных с созданием и поддержанием в рабочем состоянии программ (программного обеспечения ЭВМ). Более точный и современный термин - программная инженерия, или инженерия программного обеспечения. Сюда входят анализ и постановка задачи, проектирование программы, построение алгоритмов, разработка структур данных, написание текстов программ, отладка и тестирование программ (испытания программ), документирование, настройка (конфигурирование), доработка и сопровождение.

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

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

Программирование в широком смысле можно разбить на несколько стадий:

  • Анализ;
  • Проектирование — разработка комплекса алгоритмов;
  • Кодирование и компиляцию — написание исходного текста программы и преобразование его в исполнимый код с помощью компилятора;
  • Тестирование и отладку — выявление и устранение ошибок в программах;
  • Испытания и сдачу программ;
  • Сопровождение.

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

Раздел I - Теоретическая часть

В 1970 году, после участия в работе комитета разработки стандарта языка Ангол, Никлаусом Виртом был создан язык программирования Pascal, как язык для обучения процедурному программированию. Первоначально, язык компилировался в байт-код, подобно языку Java.

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

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

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

Автор языка понимал недостатки созданного им языка, перестал его развивать и разработал языки программирования «Модуля-2» и «Оберон».

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

Из числа последних выделяется фирма Borland, Turbo Pascal (затем Borland Pascal) которой был значительно расширен, были устранены многие недостатки языка, добавлены новые возможности. Язык стал богаче, но одновременно, потерял переносимость и общность.

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

В настоящий момент пользуются популярностью такие версии языка как TMT Pascal, Free Pascal и GNU Pascal. Продолжает использоваться и Borland Pascal. Развитием языка Borland Pascal является Object Pascal — версия языка Паскаль расширенная средствами объектно-ориентированного программирования. Последние версии Borland Pascal лежат в основе среды программирования Delphi.

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

Наибольшую популярность в странах СНГ получила среда разработки под названием Delphi. Изначально язык был предназначен исключительно для разработки приложений Microsoft Windows, затем был реализован также для платформ Linux (как Kylix), однако после выпуска в 2002 году Kylix 3 его разработка была прекращена, и, вскоре после этого, было объявлено о поддержке Microsoft .NET. При этом высказывались предположения, что эти два факта взиамосязаны. Аналогичная ситуация имела место и ранее — в Турбо Паскаль.

Реализация языка Delphi проектом Free Pascal (полное название Free Pascal Compiler) позволяет использовать его для создания приложений не только в Windows, но и для таких платформ, как Mac OS X, Windows CE и Linux.

Важной особенностью компилятора FreePascal, в отличие, например, от GNU Pascal, является ориентация на распространённые коммерческие диалекты языка: Object Pascal и Delphi. Компилятор распространяется на условиях GNU General Public License, а значительная часть библиотек, в том числе ядро RTL — на условиях более мягкой GNU Lesser General Public License.

В настоящее время в рамках проекта также разрабатывается Lazarus - свободный аналог среды программирования Delphi и Lazarus Components Library (LCL) - свободная библиотека виджетов, аналогичная Delphi VCL.

Lazarus как проект возник ещё в 1999 году с целью создать бесплатную конкуренцию программному продукту Borland Delphi. Распространяется бесплатно по лицензии GPL/LGPL. Lazarus — это IDE для создания (графических и консольных) приложений при помощи компилятора FreePascal. FreePascal — это компилятор языков Pascal и Object Pascal, распространяемый под лицензией (L)GPL, и работающий под Windows, Linux, Mac OS X, FreeBSD, и не только. Lazarus может работать на многих платформах — Linux, Windows, OS/2 и др... На данный момент является единственным инструментом, позволяющим достаточно несложно переносить Delphi-программы с графическим интерфейсом в различные операционные системы: Linux, FreeBSD, Mac OS X, Microsoft Windows.

FreePascal основан на библиотеке визуальных компонентов Lazarus Component Library (LCL). В настоящее время практически полностью поддерживает виджеты Win32, GTK1, GTK2, Carbon. В разработке находятся виджеты QT и WinCE.

- Поддерживает преобразование проектов Delphi;

- Реализован основной набор элементов управления;

- Редактор форм и инспектор объектов максимально приближены к Delphi;

- Встроенный отладчик;

- Простой переход для Delphi программистов благодаря близости LCL к VCL;

- Полностью юникодный (UTF-8) интерфейс и редактор, и поэтому отсутствие проблем с портированием кода, содержащего национальные символы;

- Мощный редактор кода, включающий систему подсказок, гипертекстовую навигацию по исходным текстам, автозавершение кода и рефакторинг;

- Форматирование кода «из коробки», используя механизмы Jedi Code Format;

- Поддержка двух стилей ассемблера: Intel и AT&T (поддерживаются со стороны компилятора);

- Поддержка множества типов синтаксиса Pascal: Object Pascal, Turbo Pascal, Mac Pascal, Delphi (поддерживаются со стороны компилятора);

- Имеет собственный формат управления пакетами;

- Авто сборка самого себя (под новую библиотеку виджетов) нажатием одной кнопки;

- Поддерживаемые для компиляции Операционные системы: Linux, Microsoft Windows (Win32, Win64), Mac OS X, FreeBSD, WinCE, OS/2.

Недостатки среды Lazarus:

- Нет полной совместимости с Delphi (хотя в отличие от Delphi предоставляет возможность создавать кроссплатформенные приложения);

- Отсутствие полной документации, хотя она доступна в виде Wiki — учебников, которые могут редактировать сами пользователи.

Наши рекомендации