Автор работы: Пользователь скрыл имя, 09 Января 2013 в 13:31, курсовая работа
В данной расчетно-графической работе осуществляется разработка учебной программы по вычислению определённых интегралов(по формулам прямоугольников) с помощью программы Delphi7. Эта программа помогает вычислять некоторые определённые интегралы. В использовании не требует особого обучения . Это приложение популярно среди людей нуждающихся в точном подсчёте интегралов . Подсчёт интегралов не занимает много времени, что так же повышает ее популярность.
ВСТУПЛЕНИЕ……………………………………………..………………………..3
1. ПОСТАНОВКА ЗАДАЧИ…………………………………………….….……...4
2. ПРОЕКТИРОВАНИЕ ПРОГРАММНЫХ СРЕДСТВ………………….……5
2.1. Математические методы решения задачи………………………….…….......6
2.2. Проектирование алгоритмов ………………………………………………..10
2.2.1. Структура программного обеспечения …………………………….....11
2.2.2. Описание разработанных алгоритмов ………………………….…....12
2.2.3. Средства управления программами ……………………………........13
2.3. Информационное обеспечение…...………………………………………....14
2.3.1. Описание входных данных ……………………………….……..…...15
2.3.2. Описание результатов …………………………………….…………...16
3. ПРОГРАММНАЯ РЕАЛИЗАЦИЯ ……………………………………………..17
3.1. Описание разработанных программ……….….………………………...18
3.2 Требования к аппаратным и программным средствам…………………..19
3.3. Руководство пользователя ………………………………………………..20
4. ИСПЫТАНИЕ РАЗРАБОТАННЫХ ПРОГРАММ ……………………….....25
4.1 Описание контрольных примеров. Результаты тестирования на ЭВМ...25
ЗАКЛЮЧЕНИЕ…………………………………………………………………….30
ЛИТЕРАТУРА………………………………………………………………..…….31
ПРИЛОЖЕНИЯ ..………………………………………………
2.3.2. Описание результатов
Результатом выполнения программы будут значения левых, правых, центральных интегральных сумм и точности вычисления представленные действительными числами типа real с 5 значащими цифрами после запятой которые будут выводиться в форму, предназначенную для вывода результатов.
3.ПРОГРАММНАЯ РЕАЛИЗАЦИЯ
В данной программе используются следующие подпрограммы, которые упрощают написание главной программы: процедуры T, print_function() и функции enter_data():boolean , Step(x : real; k : integer):real, F(x : real):real .
Кроме данных процедур программа одержит также стандартные процедуры на каждую кнопку Button1Click:
TForm1.Button1Click(Sender: TObject); TForm2.PyskClick(Sender: TObject); TForm2.Button1Click(Sender: TObject); TForm3.PyskClick(Sender: TObject);
TForm3.Button3Click(Sender: TObject); TForm4.PyskClick(Sender: TObject);
TForm4.Button1Click(Sender: TObject); TForm5.PyskClick(Sender: TObject);
TForm5.Button1Click(Sender: TObject); TForm9.PyskClick(Sender: TObject);
TForm9.Button1Click(Sender: TObject); TForm10.PyskClick(Sender: TObject); TForm10.Button1Click(Sender: TObject); TForm12.PyskClick(Sender: TObject);
TForm12.Button1Click(Sender: TObject); TForm_Close.BitBtn1Click(
3.1. Описание разработанных программ
Рассмотрим детальнее перечисленные подпрограммы.
Процедуры:
T - вычисляет шаг и количество разбиений отрезка интегрирования ;
print_function() – вывод результата вычисления в форму предназначенную для этого;
TForm1.Button1Click(Sender: TObject) – выбор вида подинтегральной функции;
TForm2.PyskClick(Sender: TObject), TForm3.PyskClick(Sender: TObject), TForm4.PyskClick(Sender: TObject), TForm5.PyskClick(Sender: TObject), TForm9.PyskClick(Sender: TObject), TForm10.PyskClick(Sender: TObject), TForm12.PyskClick(Sender: TObject) – подсчёт интеграла (если коэффициенты введены правильно, иначе выводит на экран ошибку);
TForm2.Button1Click(Sender: TObject), TForm3.Button3Click(Sender: TObject),
TForm4.Button1Click(Sender: TObject), TForm5.Button1Click(Sender:
TObject), TForm9.Button1Click(Sender: TObject), TForm10.Button1Click(Sender: TObject), TForm12.Button1Click(Sender: TObject),
TForm_rez.Button1Click(Sender: TObject), TForm_Task.BitBtn1Click(
TForm_Close.BitBtn1Click(
TForm_Close.BitBtn2Click(
Функции :
enter_data():boolean - проверяет правильность введенных данных и заполняет, если это необходимо соответствующие массивы. Если данные введены неправильно возвращает значение false не давая этим перейти к вычислению интеграла дальше выводя сообщение о соответствующей ошибке после чего программа ожидает другого выбора до тех пор, пока не будет сделан правильный.
Step(x : real; k : integer):real – возводит х в степень k;
F(x : real):real – вычисляет значение соответствующей функции;
3.2. Требования к аппаратным и программным средствам
Данная программа работает в среде Windows. Скомпилирована с помощью среды программирования Delphi 7. Программа занимает 1 433 088 байт памяти. Для корректной работы программы необходимо 4,7 МБ оперативной памяти. Программа работает в любой среде Windows.
Файлы программы:
Error.exe – исполняемый файл;
1.jpg, 2.jpg, 3.jpg, 4.jpg - файлы с изображениями, которые используются программой.
3.3 Руководство пользователя
Данный программный продукт не требует системной инсталляции и записи в реестр Windows, а установка программы осуществляется через копирование программных файлов на жесткий диск компьютера. Также программу можно запустить и с внешнего носителя, на котором она храниться.
Для запуска необходимо средствами Windows запустить главный файл Error.exe.
При запуске программы появляется заставка, которая остаётся на экране до тех пор, пока не загрузится главное меню программы (5 секунд).
Рис. 3.1.1 Заставка
После того как загрузилась программа на экране появляется главное меню. В меню которого содержатся пункты: «Задача», «Выход» и отдельно пункт «О программе».
Рис. 3.1.2 Меню
При нажатии соответствующего пункта меня появятся окна:
Рис. 3.1.4 Задача
Рис. 3.1.5 Подтверждение о желании выйти
Рис. 3.1.3 Коротко о программе
При выборе формы интеграла и нажатии на кнопку «Выбрать» появится соответствующее окно. Одно из:
Рис. 3.1.6 Рис. 3.1.7
Рис. 3.1.8
Рис. 3.1.10
Рис.3.1.12
После чего при правильном введении коэффициентов и отрезка интегрирования мы видим новое окно с результатами вычисления:
Рис. 3.1.13
4. ИСПЫТАНИЕ РАЗРАБОТАННЫХ ПРОГРАММ
4.1 Описание контрольных примеров. Результаты тестирования на ЭВМ
Пример 1.
Посчитать определённый интеграл
F(x) =
Подсчёт определённого интеграла будет происходить после того как пользователь введёт данные о интеграле (коэффициенты, отрезок на котором нужно считать интеграл).
Рис. 4.1.1
На первом этапе нужно ввести сетку, разбивающую отрезок [-3,7] на N равностоящих узлов. N = 100. Вычислим шаг h=(b-a)/N=0,1. Образуем новый одномерный массив из значений аргумента в каждой точке разбиения.
На втором этапе посчитаем интеграл по квадратурной формуле левых прямоугольников:
Integral_l= 2716,628.
На третем этапе посчитаем интеграл по квадратурной формуле правых прямоугольников:
Integral_r= 2732,764.
На четвёртом
этапе посчитаем интеграл по кв
Integral_с= 2734,689.
На пятом этапе посчитаем точность вычислений:
Точность=0,00673 (по центральных прямоугольниках).
Рис. 3.1.2
Пример 2.
Посчитать определённый интеграл F(x)=
Рис. 3.1.3
На первом этапе нужно ввести сетку, разбивающую отрезок [0,2] на N равностоящих узлов.
На втором этапе посчитаем интеграл по квадратурной формуле левых прямоугольников:
Integral_l= 2,024.
На третем этапе посчитаем интеграл по квадратурной формуле правых прямоугольников:
Integral_r= 2,024.
На четвёртом этапе посчитаем интеграл по квадратурной формуле центральных прямоугольников:
Integral_с= 2,024.
На пятом этапе посчитаем точность вычислений:
Точность=0. Это значит, что интеграл подсчитан с точностью больше чем 5 знаков после запятой.
Рис. 3.1.4
Пример 3.
Посчитать определённый интеграл F(x)=
Рис. 3.1.5
На первом этапе нужно ввести сетку, разбивающую отрезок [1,100] на N равностоящих узлов.
На втором этапе посчитаем интеграл по квадратурной формуле левых прямоугольников:
Integral_l= 1807,24.
На третем этапе посчитаем интеграл по квадратурной формуле правых прямоугольников:
Integral_r= 1807,47.
На четвёртом этапе посчитаем интеграл по квадратурной формуле центральных прямоугольников:
Integral_с= 1807,355.
На пятом этапе посчитаем точность вычислений:
Точность=0,00012.
Рис.3.1.6
Контрольные
примеры показывают что
ЗАКЛЮЧЕНИЕ
Разработанная
программа является несложной в
использовании, имеет удобный интерфейс.
Программа выполняется в
ЛИТЕРАТУРА
1.Чертов О.Р. Математичний аналіз для програмістів частина перша.-
Київ,2005-279с.
2.Вычислительная техника и программирование: Учебник для технических
вузов/ А.В. Петров /- М., Высш. шк., 1990- 497с.
3. Рапаков Г.Г., Ржеуцкая С.Ю. Turbo Pascal для студентов и школьников.-
Санкт-Петербугр, 2002.
4.Фарoнoв В.В. Delphi 2005. Язык, среда, разрабoтка прилoжений. –СПб.:
Питер, 2006. – 560 с.
5. Фарoнoв В.В. Delphi. Прoграммирoвание на языке высoкoгo урoвня: Учебник
для вузoв. – СПб.: Питер, 2006. – 640 с.
6. Митчелл К. Керман. Прoграммирoвание и oтладка в Delphi. Учебный курс. –
СПб.: Вильямс, 2004. – 720 с.
ПРИЛОЖЕНИЕ (текст программы)
program Error;
uses
Forms,
Unit1 in 'Unit1.pas' {Form1},
Unit2 in 'Unit2.pas' {Form2},
Unit3 in 'Unit3.pas' {Form3},
Unit4 in 'Unit4.pas' {Form4},
Unit5 in 'Unit5.pas' {Form5},
Unit6 in 'Unit6.pas' {Form_Close},
Unit7 in 'Unit7.pas' {Form_Task},
Unit8 in 'Unit8.pas' {Form_rez},
Unit9 in 'Unit9.pas' {Form9},
Unit10 in 'Unit10.pas' {Form10},
Unit11 in 'Unit11.pas' {Form_About_Program},
Unit12 in 'Unit12.pas' {Form12},
Unit13 in 'Unit13.pas' {Form13};
{$R *.res}
begin
Application.Initialize;
Application.CreateForm(
Application.CreateForm(TForm1, Form1);
Application.CreateForm(TForm2, Form2);
Application.CreateForm(TForm3, Form3);
Application.CreateForm(TForm4, Form4);
Application.CreateForm(TForm5, Form5);
Application.CreateForm(TForm_
Application.CreateForm(TForm_
Application.CreateForm(TForm_
Application.CreateForm(TForm9, Form9);
Application.CreateForm(
Application.CreateForm(TForm_
Application.CreateForm(
Application.Run;
End.
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, xpman, jpeg, Menus;
type
TForm1 = class(TForm)
RadioButton1: TRadioButton;
RadioButton2: TRadioButton;
RadioButton3: TRadioButton;
RadioButton4: TRadioButton;
RadioButton5: TRadioButton;
RadioButton7: TRadioButton;
RadioButton8: TRadioButton;
Button1: TButton;
GroupBox1: TGroupBox;
Image1: TImage;
Label2: TLabel;
MainMenu1: TMainMenu;
N1: TMenuItem;
N2: TMenuItem;
N3: TMenuItem;
N4: TMenuItem;
Label1: TLabel;
procedure Button1Click(Sender: TObject);
procedure N3Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure N4Click(Sender: TObject);
procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
uses Unit2, Unit3, Unit4, Unit5, Unit6, Unit7, Unit9, Unit10, Unit11,
Unit12;
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
Form1.Visible := False;
if RadioButton1.Checked = true then Form2.Visible := True
else begin
if RadioButton2.Checked = true then Form3.Visible := True
else begin
if RadioButton3.Checked = true then Form4.Visible := True
else begin
if RadioButton4.Checked = true then Form5.Visible := True
else begin
if RadioButton5.Checked = true then Form9.Visible := True
else begin
if RadioButton7.Checked = true then Form10.Visible := True
else begin
if RadioButton8.Checked = true then Form12.Visible := True
else begin
Beep;
Form1.Visible := True;
MessageDlg('Выберите вариант функции !!!',mtError,[mbOK],0);
end;
end;
end;
end;
end;
end;
end;
RadioButton1.Checked:=false;
RadioButton2.Checked:=false;
RadioButton3.Checked:=false;
RadioButton4.Checked:=false;
RadioButton5.Checked:=false;
RadioButton7.Checked:=false;
RadioButton8.Checked:=false;
end;
procedure TForm1.N3Click(Sender: TObject);
begin
Form1.Enabled:=false;
Form_Close.Visible:=true;
end;
procedure TForm1.N2Click(Sender: TObject);
begin
Form_Task.Caption:=' Задача ';
Form_Task.Memo1.Clear;
Form_Task.Memo1.Lines.Add(' Выполнила студентка 1 курса, факультета прикладной математики ');
Form_Task.Memo1.Lines.Add(' Задача :');
Form_Task.Memo1.Lines.Add('
Form_Task.Visible:=true;
Form1.Enabled:=false;
end;
procedure TForm1.N4Click(Sender: TObject);
begin
Form_About_Program.Visible:=
Form1.Enabled:=false;
end;
procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
Информация о работе Програма обчислення визначених інтегралів по квадратурним формулам