Реферат: Разработка программы расчета определенного интеграла по формуле Буля по схеме двойного пересчета с заданной точностью
3.3 Проектирование интерфейса программы
Основные процедуры, используемые при составлении
алгоритма:
а) f-вызывает расчётную функцию;
б) Bool- расчёт определённого интеграла.
4 Тестирование программы
4.1 Тестирование программы в математическом пакете.
4.2 Тестирование программы
Для тестирования использована функция f(x)=5*x5-x3.
Рисунок 1- Основное окно.
Рисунок 2 – Ввод данных.
Тестирование проводилось на ЭВМ со следующими характеристиками:
- центральный процессор – Intel Pen tium 2.2 GHz;
- оперативная память – 1024Mb;
- видеоадаптер – GeForce 4 64 Mb;
- монитор – Sony Trinitron;
- операционная система – Windows XP.
5 Разработка гипертекстового варианта документа
Рисунок 3-Гипертекстовый вариант
Для перевода текста программы в формат HTML использовалась команда приложения MicrosoftWord (пакета Office XP) “Сохранить как Web-страницу”.
Вид полученного документа, отображаемого InternetExplorer 5.0 представлен на рисунке 3.
Заключение
В данной курсовой работе разработана программа расчета определенного интеграла по формуле Буля по схеме двойного пересчета с заданной точностью
При работе над программой пройдены все этапы создания программных продуктов. Получены навыки в математическом описании задачи, разработке алгоритма программы, составлении текста программы и проведении тестирования программы. Использована система программирования C Builder v5.0.
Список использованных
источников
1 Крылов В.И. Вычислительные методы высшей математики. Т.1./ Под ред. И.П. Мысовских. — Мн.: Вышэйшая школа, 1972.
2 Мудров А.Е. Численные методы для ПЭВМ на языках Бейсик, Фортран, Паскаль - Томск: МП Таско", 1992
3 Херхагер М., Партолль X. MathCAD 2000; полное руководство: Пер. с нем. - К.: Издательская группа BHV, 2000. - 416с.
4 Гусак А.А., Гусак ГМ. Справочник по высшей математике. - Мн.: Наука и техника, 1991.
Приложение А
(обязательное)
Твёрдая копия
Project1.cpp
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
USERES("Project1.res");
USEFORM("Unit1.cpp", Form1);
USEFORM("Unit2.cpp", Form2);
USEFORM("Unit3.cpp", Form3);
//---------------------------------------------------------------------------
WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
try
{
Application->Initialize();
Application->CreateForm(__classid(TForm1), &Form1);
Application->CreateForm(__classid(TForm2), &Form2);
Application->CreateForm(__classid(TForm3), &Form3);
Application->Run();
}
catch (Exception &exception)
{
Application->ShowException(&exception);
}
return 0;
}
//---------------------------------------------------------------------------
Unit1.cpp
//---------------------------------------------------------------------------
#include <vcl.h>
#include<io.h>
#include<math.h>
#pragma hdrstop
#include "Unit1.h"
#include "Unit2.h"
#include "Unit3.h"
#include <fcntl.h>
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
float a=0,b=10,e=0.01,I[2];
float f(float x)
{
return 5*pow(x,5)-pow(x,3);
}
//-------------------------------------
void Bool()
{
float h,s,x[5],N=2;
int i,l;
do
{
for(l=0;l<=1;l++)
{
s=0;
h=(b-a)/N;
x[0]=a;
x[1]=a+h/4;
x[2]=a+h/2;
x[3]=a+3*h/4;
x[4]=a+h;
for(i=1;i<=N;i++)
{
s=(7*f(x[0])+32*f(x[1])+12*f(x[2])+32*f(x[3])+7*f(x[4]))+s;
x[0]+=h;
x[1]+=h;
x[2]+=h;
x[3]+=h;
x[4]+=h;
}
I[l]=h*s/45/2;
N=N*2;
}
}while(fabs(I[0]-I[1])>e);
}
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Exit1Click(TObject *Sender)
{
Close();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Exit2Click(TObject *Sender)
{
Close();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Exit1pop(TObject *Sender, TCanvas *ACanvas,
TRect &ARect, bool Selected)
{
SB1->SimpleText="Выход";
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N1Click(TObject *Sender)
{
Form2->Show();
SB1->SimpleText="Ввод данных закончен";
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N2Click(TObject *Sender)
{
Bool();
Form3->Show();
SB1->SimpleText="Произведен расчет";
}
//---------------------------------------------------------------------------
Unit2.cpp
//---------------------------------------------------------------------------
#include <vcl.h>
#include<iostream.h>
#pragma hdrstop
#include "Unit2.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "ibctrls"
#pragma link "ibreg"
#pragma link "CSPIN"
#pragma resource "*.dfm"
TForm2 *Form2;
extern float a,b,e;
//---------------------------------------------------------------------------
__fastcall TForm2::TForm2(TComponent* Owner)
: TForm(Owner)
{
}
//------------------------------------------
//---------------------------------------------------------------------------
void __fastcall TForm2::Button2Click(TObject *Sender)
{
Form2->Close();
}
//---------------------------------------------------------------------------
float __fastcall TForm2::checkf(TObject *Sender,TEdit *e1,float w)
{
float buf;
do{
try
{
if(e1->Text!="")
buf=StrToFloat(e1->Text);else buf=w;
}
catch(const EConvertError &e)
{
int j=Application->MessageBox("Неверные данные", NULL, MB_OK);
buf=-1;
e1->Text=FloatToStr(w);
}}while((buf==-1));
return buf;
}
//----------------------------------------
void __fastcall TForm2::Button1Click(TObject *Sender)
{
e=checkf(Sender,Edit4,e);
a=checkf(Sender,Edit1,a);
b=checkf(Sender,Edit2,b);
Form2->Close();
}
//---------------------------------------------------------------------------
void __fastcall TForm2::FormCreate(TObject *Sender)
{
Edit1->Text=FloatToStr(a);
Edit2->Text=FloatToStr(b);
Edit4->Text=FloatToStr(e);
}
//---------------------------------------------------------------------------
void __fastcall TForm2::GroupBox1Click(TObject *Sender)
{
}
//---------------------------------------------------------------------------
Unit3.cpp
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit3.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "PERFGRAP"
#pragma resource "*.dfm"
TForm3 *Form3;
extern float I[2];
//---------------------------------------------------------------------------
__fastcall TForm3::TForm3(TComponent* Owner)