Помощь в написании студенческих работ
Антистрессовый сервис

Интегрирование методом Симпсона

КурсоваяПомощь в написанииУзнать стоимостьмоей работы

У системы программирования Delphi есть недостаток, проявляющийся в большом объеме создаваемых приложений по сравнению приложениями, созданными в других средах программирования. Действительно, минимальное приложение, созданное в различных версиях Delphi, может достигать от 170 до 290 Кбайт. Это очень большая цифра для операционной среды Windows, в компиляторах C++ она составляет порядка 40 Кбайт… Читать ещё >

Интегрирование методом Симпсона (реферат, курсовая, диплом, контрольная)

  • ВВЕДЕНИЕ
  • 1. ПРОЕКТИРОВАНИЕ ПРОГРАММНОГО ПРОДУКТА
    • 1.1 ИССЛЕДОВАНИЕ ПРЕДМЕТНОЙ ОБЛАСТИ
    • 1.2 БЛОК-СХЕМА
    • 1.3 СТРУКТУРНАЯ СХЕМА ПРОГРАММНОГО ПРОДУКТА
    • 1.4 ФУНКЦИОНАЛЬНАЯ СХЕМА ПРОГРАММНОГО ПРОДУКТА
  • 2. РЕАЛИЗАЦИЯ ПРОГРАММНОГО ПРОДУКТА
    • 2.1 ВЫБОР СРЕДЫ РЕАЛИЗАЦИИ
    • 2.2 ТЕСТИРОВАНИЕ ПРОГРАММНОГО ПРОДУКТА
    • 2.3 ФОРМА ВВОДА-ВЫВОДА
  • ЗАКЛЮЧЕНИЕ
  • БИБЛИОГРАФИЧЕСКИЙ СПИСОК
  • ПРИЛОЖЕНИЕ

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

Целью данной работы — разработка программного приложения, которое позволяет вычислять интегралы, предложенные в задании с помощью метода Симпсона.

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

— провести исследование предметной области;

— обосновать выбор среды реализации;

— составить математическую модель;

— составить функциональную и структурные схемы программного продукта;

— разработать тестовые примеры;

— провести тестирование программного продукта;

— разработать руководство пользователя;

Объектом настоящего исследования является численное интегрирование, предметом — интегрирование методом Симпсона.

Теоретической основой работы являются труды профессионалов разработки в среде программирования Delphi, а также книга Турчак Л. И. «Основы численных методов», как основа для исследования предметной области.

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

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

1. ПРОЕКТИРОВАНИЕ ПРОГРАММНОГО ПРОДУКТА

1.1 ИССЛЕДОВАНИЕ ПРЕДМЕТНОЙ ОБЛАСТИ

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

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

Заменяя подинтегральную функцию суммой составных площадей, получаем:

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

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

Рисунок 1.1.1 — Графическая иллюстрация численного интегрирования.

Разобьем отрезок интегрирования [p1,p2] на четное число элементарных отрезков с шагом h. На каждой паре отрезков [х1,х3], [х3,х5],…, [хn-1,хn+1] подынтегральную функцию заменим интерполяционным полиномом второй степени (параболой):

В качестве интерполяционного полинома можно использовать интерполяционный полином Лагранжа второй степени:

Т.к. значение элементарного отрезка разбиения равна h, то

Таким образом получим формулу Симпсона для элементарного отрезка

Для n элементарных отрезков:

1.2 БЛОК-СХЕМА

Рисунок 1.2.1 — Алгоритм реализации метода

1.3 СТРУКТУРНАЯ СХЕМА ПРОГРАММНОГО ПРОДУКТА

Создаваемое в среде Delphi приложение состоит из нескольких элементов, объединенных в проект. В состав проекта входят следующие элементы (в скобках указаны расширения имен файлов):

— П код проекта (DPR);

— описания форм (DFM);

— модули форм (PAS);

— модули (PAS);

— параметры проекта (DOF);

— описание ресурсов (RES).

Для каждой формы в составе проекта автоматически создаются файл описания (DFM)и файл модуля (PAS).

Файл описания формы является ресурсом Delphi и содержит характеристики формы и ее компонентов. Разработчик обычно управляет этим файлом через окно Конструктора формы и Инспектор объектов. При конструировании формы в файл описания автоматически вносятся соответствующие изменения. При необходимости можно отобразить этот файл на экране в текстовом виде, что выполняется командой View as Text (Просмотреть как текст) контекстного меню формы. При этом форма пропадает с экрана, а содержимое файла ее описания открывается в окне Редактора кода и доступно для просмотра и редактирования.

При первом сохранении проекта автоматически создается файл ресурсов (RES)с именем, совпадающим с именем файла проекта. Файл ресурсов может содержать следующие ресурсы:

— пиктограммы;

— растровые изображения;

— курсоры.

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

Структурная схема программного продукта:

Рисунок 1.3.1 — Структурная схема

1.4 ФУНКЦИОНАЛЬНАЯ СХЕМА ПРОГРАММНОГО ПРОДУКТА

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

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

Интерфейс приложения составляют компоненты, которые разработчик выбирает из Палитры компонентов и размещает на форме, сами компоненты являются своего рода строительными блоками. При конструировании интерфейса приложения действует принцип WYSIWYG (What You See Is What You Get, что видите, то и получите), и разработчик при создании приложения видит форму почти такой же, как и при его выполнении.

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

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

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

Функциональная схема данного программного продукта выглядит следующим образом:

2. РЕАЛИЗАЦИЯ ПРОГРАММНОГО ПРОДУКТА

2.1 ВЫБОР СРЕДЫ РЕАЛИЗАЦИИ

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

Система программирования Delphi явилась подлинной революцией, полностью изменившей взгляд на программирование и, в частности, на программирование для Windows. За прошедшие годы ряды программистов пополнились армией людей, способных быстро, подчас виртуозно, создать масштабное приложение, не имея особого понятия ни об архитектуре Windows, ни об основополагающих принципах работы приложения и его взаимодействия с операционной системой [1,С.].

Delphi не уступает по своим возможностям C++. Скорость работы созданных на Delphi программ не меньше, чем у программ, разработанных на языке C++. Разница будет заметна лишь при большом объеме математических вычислений, что объясняется отличной способностью оптимизации программ компилятора C++. Однако лучшая оптимизация программ занимает и больше времени, а это замедляет процесс разработки программ. Здесь, несомненно, преимущество компилятора Delphi, который позволяет почти мгновенно внести изменения и проверить результат. Времени на это затрачивается очень мало.

Delphi также прост в изучении, как и Visual Basic, но при этом средства языка программирования Delphi позволяют использовать все современные

возможности объектно-ориентированного программирования. На Delphi можно написать Visual Basic, но обратное сделать, никогда не удастся.

Delphi прост и логичен. Основные конструкции языка четко выделяются в программе, что способствует хорошему восприятию написанного кода, в отличие от языка Visual Basic, где код почти невозможно понять, если его количество превышает пару страниц. Графический интерфейс Delphi отлично продуман, среда разработки предоставляет доступ только к тем участкам кода, с которыми необходимо работать, скрывая основную часть программы, которая создается автоматически самой средой разработки.

Надо отметить, что из всех языков программирования только Delphi не устаревает и завоевывает все больше и больше сторонников. Его широко используют в коммерческих разработках, благодаря большому набору полностью готовых для работы специальных компонентов. Нельзя сказать, что другие языки исчезают. Еще долго будут существовать и C++, и Cobol, и Fortan, но все же намечается тенденция отказа от малопродуктивных и сложных языков программирования в пользу современных, многофункциональных и удобных сред программирования, таких как Delphi, C#, Java.

У системы программирования Delphi есть недостаток, проявляющийся в большом объеме создаваемых приложений по сравнению приложениями, созданными в других средах программирования. Действительно, минимальное приложение, созданное в различных версиях Delphi, может достигать от 170 до 290 Кбайт. Это очень большая цифра для операционной среды Windows, в компиляторах C++ она составляет порядка 40 Кбайт. Конечно, это не катастрофическая проблема, когда емкости накопителей измеряются гигабайтами, и средний пользователь, как правило, не обращает внимания на размер файла. Неудобства возникают, например, при распространении приложений по сети. Большой размер откомпилированных приложений является платой за невероятное удобство проектирования, предоставляемое Delphi. Архитектура среды программирования, RTTI, компонентный подход — все это превращает Delphi в поразительно мощный инструмент. С помощью Delphi легко написать приложения, в которых, например, динамически создаются интерфейсные элементы любого типа (класса). Однако приложения среднего уровня не используют и не нуждаются в этих мощных возможностях. И пользователи, и разработчики в таких средствах, как правило, не испытывают необходимости.

Однако откомпилированный модуль содержит в себе весь тот код, благодаря которому в Delphi так легко производить манипуляции со свойствами и методами объектов. К примеру, если просмотреть содержимое откомпилированного модуля, то мы встретим в нем фразы, имеющие к собственно операционной системе косвенное отношение, например, «OnKeyDcDwn» или другие термины Delphi.

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

Создание прикладных программ, или приложений, Delphi выполняется в интегрированной среде разработки IDE (Integrated Development Environment). IDE служит для организации взаимодействия с программистом и включает в себя ряд окон, содержащих различные управляющие элементы. С помощью средств интегрированной среды разработчик может удобно проектировать интерфейсную часть приложения, а также писать программный код и связывать его с управляющими элементами. При этом вся работа по созданию приложения, включая отладку, происходит в интегрированной среде разработки.

Для разработки программного продукта, представленного в курсовой работе, выбрана среда визуального программирования Delphi 7.

2.2 ТЕСТИРОВАНИЕ ПРОГРАММНОГО ПРОДУКТА

В программе предусмотрена проверка на правильность ввода исходных данных:

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

Введем исходные данные, представленные на рисунке:

Рисунок 2.2.1 — Отображение исходных данных.

интеграл программный математический Результат работы программы:

Рисунок 2.2.2 — Отображение результата работы программы на введенные данные.

Для проверки правильности расчетов по методу Симпсона найдем аналитически значение второго интеграла :

при p1=1,p2=5, значение второго интеграла равно 4.

Введем исходные данные, получим результат, представленный на рисунке:

Рисунок 2.2.3 — Отображение вывода результатов.

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

2.3 ФОРМА ВВОДА-ВЫВОДА

Delphi относится к системам визуального программирования, которые называются также системами RAD (Rapid Application Development, быстрая разработка приложений). Разработка приложения в Delphi включает два взаимосвязанных этапа:

* создание интерфейса приложения;

* определение функциональности приложения.

Интерфейс приложения определяет способ взаимодействия пользователя и приложения, то есть внешний вид формы (форм) при выполнении приложения, и то, каким образом пользователь управляет приложением. Интерфейс создается путем размещения в форме компонентов, которые называются интерфейсными или управляющими компонентами (элементами).

Создание интерфейса приложения выполняется с помощью Конструктора формы.

Рисунок 2.3.1 — Форма пользователя.

ЗАКЛЮЧЕНИЕ

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

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

Анализ основных вопросов проекта дает возможность предположить, что наиболее оптимальным конструктивным решением будет использование в качестве среды реализации Delphi.

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

Составлены функциональные и структурные схемы.

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

Разработано подробное руководство пользователя с использование экранных копий элементов интерфейса.

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

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. Бобровский С. И. Delphi 7- СПб.: Питер, 2008. — 736с.

2. Гофман В. Э., Хомоненко А. Д. Delphi. Быстрый старт.— СПб.: БХВ-Петербург, 2003.— 288 с.: ил.

3. Дарахвелидае П. Г., Марков Е. П. Программирование в Delphi 7.— СПб.: БХВ-Петербург, 2003.—784с.: ил.

4. Кучеренко В. Тонкости программирования на Delphi — М.: Познавательная книга плюс, 2000;192с.

5. Турчак Л. И. Основы численных методов. — М.: Наука. 1987. -320 с.

6. Флеиов М. Е. Программирование в Delphi глазами хакера.— СПб.: БХВ-Петербург, 2003.-368с.

7. Форсайт Дж., Малькольн М. Маулер К. Машинные методы математических вычислений. — М.: Мир. 1980. — 280с.

ПРИЛОЖЕНИЕ

РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ

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

Рисунок А.1 — Фрагмент пользовательской формы.

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

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

Рисунок А.2 — Фрагмент пользовательской формы.

Границы интегрированияцелые числа, точность — вещественное число. Выход из программы осуществляется выбором пункта меню Файл/Выход.

Показать весь текст
Заполнить форму текущей работой