Смекни!
smekni.com

Программа вычисления значения определённого интеграла (стр. 2 из 4)

Классификация версий DELPHI

Первая версия Delphi обладала набором возможностей, которые немедленно привлекли мое пристальное внимание. Покорившими меня особенностями Delphi были ее идеология форм объектно – ориентированный подход, необычайно быстрый компилятор, прекрасные инструменты для работы с базами данных, тесная интеграция с программированием в среде Windows и технология компонентов. Но самой важной частью был язык OBJECTPASCAL, на фундаменте которого строилось все остальное.

Версия Delphi 2 была еще лучше! Среди ее наиболее важных дополнений были следующие: компонент TBDCtrlGrid для работы с несколькими записями одновременно, улучшенная сетка баз данных,поддержка автоматизации OLE и тип данных вариант, тесная интеграция с Windows 95, тип данных longstring и наследование форм. В Delphi 3 к этому добавились технология Codeinsight (система подсказок для написания кода ), возможность отладки DLL, шаблоны компонентов, TeeChart (библиотека компонентов для работы с графиками), Decision Сube(метакуб –многомерная модель данных),технология WebBroker (компоненты для программирования в интрасетях ), пакеты компонентов, ActiveForms (формы для разработки элементов ActiveX ) и замечательная интеграция с COM основанная на применении интерфейсов.

В Delphi 4 появился редактор AppBrowser, поддержка новых возможностей Windows 98, улучшенная поддержка OLE и COM, расширенные компоненты баз данных и множество добавлений к базовым классам VCL, включая поддержку фиксации ограничений и привязки элементов управления. В Delphi 5 к общей картине добавилось множество других улучшений IDE, расширенная поддержка баз данных, улучшенная версия MIDAS с поддержкой Интернета, инструмент управления версиями TeamSource, возможности лингвистического перевода, концепция фреймов, большое количество новых компонентов.

Delphi 6 добавляет ко всем уже существующим в Delphi возможностям поддержку так называемой кросс-платформенной разработки приложений (или, говоря иначе, возможность разработки приложений для платформы Х ), которая базируется на использовании новой библиотеки компонентов, расширенную библиотеку времени исполнения, новый базовый механизм работы с базами данных dbExpress, поддержку Web –служб и XML, мощную инфраструктуру разработки приложений для Web, новые улучшения IDE, а также огромное количество новых компонентов и классов.

Delphi – прекрасный инструмент разработки, но в то же время и сложная программная среда, состоящая из многих элементов.

2. ПРАКТИЧЕСКИЕ АСПЕКТЫ ПРОГРАММЫ

2.1 Функционально-структурная схема


Рис. 1- Функционально-структурная схема

2.2 Иерархия форм

Рис.2 - Главная форма

Рис. 3– API –функции

Рис.4 – Главная форма (прорисовка графиков)


Рис.5 -Наглядный метод решения

Рис.6 - Настройки

Рис 7 – Главная форма для вычисления интеграла


Работа с программой начинается с этой формы.

На этой форме вы можете рассчитать интеграл:

1. Выбрать интеграл

2. Выбрать метод (трапеций, Симпсона)

3. Ввести верхний предел интеграла

4. Ввести нижний предел интеграла

5. Ввести число разбиений

6. Нажав клавишу «Вперед» вычислить значение интеграла

Рис 8 – Форма для прорисовки графиков

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

1. Выбрать интеграл

2. Нажать клавишу «График» и получить график выбранного вами интеграла


Рис 9 - Таблицы

На этой форме показан более детально метод нахождения интегралов.

Форма для применения функции WindowsAPISetForegroundWindow(HWND:hwnd);

Рис 10 – API –функции

На этой форме можно применить функцию SetForegroundWindow(HWND:hwnd) путем нажатия клавиши«Применить».

Форма для применения функции WindowsAPISetCurrentDirectory(IpPathName:PChar):bool;

Рис.11 – API-функции

На этой форме можно применить функцию SetCurrentDirectory(IpPathName:PChar):bool;

путем нажатия клавиши«Применить».

Форма настроек главной формы

Рис.12 - Настройки

На этой форме расположены настройки с помощью которых настраивается цвет и шрифты главной формы.

2.3 Элементы главной формы

Элемент формы Назначение Событие
Bitgraf Кнопка для запуска процедуры прорисовки графиков BitgrafClick
Buclear Кнопка для очистки поля для вывода значений интегралов BuclearClick
Burun Кнопка для запуска процедуры вычисления интегралов BurunClick
Cbint Переключатель для выбора интеграла CbintChange
CBmet Переключатель для выбора метода решения
ColorDialog Палитра для выбора цвета
DateTimePicker Календарь (день,месяц,год)
Edzn1 Поле для ввода нижнего предела интеграла
Edzn2 Поле для ввода верхнего предела интеграла
Gauge Компонент для визуального отображения степени завершенности некоторой длительной орерации или процесса
Imgraf Поле для вывода графически результатов вычисления
Imint Поле для вывода графического изображения интеграла
Kurs Главная форма MainMenuFormCreate
LbCbint Метка которая указывает на переключатель Cbint
LbCbmet Метка которая указывает на переключатель Cbmet
LbEdzn1 Метка которая указывает поле Edzn1
LbEdzn2 Метка которая указывает поле Edzn2
LbintGraf Метка которая указывает поле Imgraf
MMoutput Поле для вывода значений припостроении графика
LbznGr Метка которая указывает поле MMoutput
N22SetCurrentDirectory Пункт меню для применении функции SetCurrentDirectory N22GetCurrentDirectory1Click
N52SetForegroundWindow1Click Пункт меню для применении функции SetForegroundWindow N52SetForegroundWindow1Click
RBint1 Переключатель для построения графика на первый интеграл RBint1Click
RBint2 Переключатель для построения графика на второй интеграл RBint2Click
StatusBar Строка для вывода подсказок

2.4 ФункцииWindows API

SetForeGroundWindow function SetForegroundWindow(hWnd: HWND): BOOL;

Функция SetForegroundWindow(HWND:hwnd) предназначена для перевода окна, которое идентифицируемо пораметром hwnd,в" верхний слой " и перевода на него фокус, независимо от того, какой поток создал это окно.

SetForegroundWindow( HWNDhWnd // Маркер(дескриптор) окна, чтобы перенести к переднему плану)

Параметры

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

Применение:

procedure TForm2.Timer1Timer(Sender: TObject);

begin

SetForegroundWindow(kurs.Handle);

Timer1.Enabled:=false;

end;

Обработчиком события является таймер (Timer1Timer) который и запускает функцию

SetCurrentDirectory

function SetCurrentDirectory(lpPathName: PChar): BOOL;

ФункцияSetCurrentDirectory(‘lpPathName: PChar ‘) изменяет (устанавливает) текущийкаталог. Возвращаемое значение было бы True, если текущий каталог был успешно изменен(заменен), или False, если ошибка произошла.

SetCurrentDirectory(

lpPathName// Адрес названия(имени) нового текущего каталога );

Параметры

lpPathName

Укажите на строку с нулевым символом в

конце, которая определяет путь к новому текущему каталогу.

Применение:

procedure TForm3.Button1Click(Sender: TObject);

begin

SetCurrentDirectory('c:\');

end;

Обработчиком события является кнопка (Button1Click) который и запускает функцию.

2.5 Основные процедуры

Расчет интегралов