Курсовая: Разработка программы расчета определенного интеграла по формуле Буля по схеме двойного пересчета с заданной точностью - текст курсовой. Скачать бесплатно.
Банк рефератов, курсовых и дипломных работ. Много и бесплатно. # | Правила оформления работ | Добавить в избранное
 
 
   
Меню Меню Меню Меню Меню
   
Napishem.com Napishem.com Napishem.com

Курсовая

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

Банк рефератов / Программирование

Рубрики  Рубрики реферат банка

закрыть
Категория: Курсовая работа
Язык курсовой: Русский
Дата добавления:   
 
Скачать
Архив Zip, 400 kb, скачать бесплатно
Заказать
Узнать стоимость написания уникальной курсовой работы

Узнайте стоимость написания уникальной работы

25 Министерство образования Республики Беларусь УЧРЕЖДЕНИЕ ОБРАЗОВАНИЯ МОГИЛЕВСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ Кафедра "ЭП и АПУ " ПОЯСНИТЕЛЬНАЯ ЗАПИСКА К курсовой работе по дисциплине “Вычислительная техника и программирование” Выполнил студент группы ЭП -012 Гончаров А . М. Могилев , 2003 Министерство образования Республики Беларусь УЧРЕЖДЕНИЕ ОБРАЗОВАНИЯ МОГИЛЕВСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСК ИЙ УНИВЕРСИТЕТ Кафедра "ЭП и АПУ " Курсовая работа Разработка программы расчета определенного интеграла по формуле Буля по схеме двойного пересчета с заданной точностью Пояснительная записка БУЛ 07.00.00.000 ПЗ Руководитель ст . преподаватель ______________ Абрашкин В.П. Студент группы ЭП -02 ______________ Гончаров А.М. Могилев , 2003 Содержание Введение 1 Постановка задачи 1.1 Общая характеристика задачи 1.2 Анализ литературных источников 1.3 Расчётные формулы метода 2 Разработка алгоритма задачи 2.1 Описание данных , используемых для решения задачи 2.2 Описание схемы программы 3 Кодирование программы 3.1 Описание структуры разрабатываемого пакета 3.2 Описание используемых типов данных 3.3 Проектирование интерфейса программы 4 Тестирование программы 5 Разработка гипертекстового варианта докуме нта Заключение Список используемых источников Приложение А . Твёрдая копия Приложение Б . Результаты тестирования программы Приложение В. Тестирование данных в математическом пакете Приложение Г . Гипертекстовый вариант документа Приложение Д . Акт приёмки про граммы Введение Данный курс «Вычислительной техники и программирования» мы заканчиваем курсовым проектом , в котором нам следует разработать программу согласно полученному заданию. Стремительное развитие науки и техники , в том числе и вычислительной , тр ебует знания её от каждого , считающего себя образованным , человека . Из-за всё возрастающей сложности многих объектов требуется улучшенная организация процесса программного моделирования и высокая степень образованности специалистов , а повышение требовани й к функционированию этих объектов делают нашу задачу еще более сложной . Для решения этой задачи применяется математическое моделирование , которое осуществляется опять же с помощью вычислительной техники , в частности компьютера. Нельзя не упомянуть о том , ч то широкое применение в современной науке и технике получили дифференциальные уравнения различной степени и вида сложности . В частности , они применяются в электротехнике , машиностроении , электронике , разработке различного рода аппаратного обеспечивания , м а тематике , физике и других видах деятельности человека. Наша задача : создать способ быстрого , качественного , удобного и недорого решения поставленных перед нами задач. В данной курсовой работе мы применили численные методы нахождения определенного интеграла. Данной курсовой работой мы заканчиваем цикл лекций и лабораторных работ по изучению среды программирования C Builder v 5.0, программы выполнения расчетов MathCad , работы в многофункциональном текстовом редакторе Word XP , программы выполнения чертежей Aut oCad и использованию функциональных возможностей операционной системы Windows XP . Все эти знания я постарался использовать в своем курсовом проекте . 1 Постановка задачи 1.1 Общая характеристика задачи Численное интегрирование используется для приближенного поиска значения определенного интеграла непрерывной функции f ( x ) на заданном интервале [a,b] согласно выражению , ( 1.1 ) где Q [ f ] – формула численного интегрирования ; E [ f ] – ошибка усечения. Формула численного инте грирования называется формулой квадратуры . В общем виде она может быть представлена как сумма ( 1.2 ) где X 0 , ... , X K – узлы квадратуры ; 0 , ... , K – веса квадратуры. Степень точности формулы квадратуры равна положительному целому числу n . Величина ошибки отсечения определяется в общем случае согласно выражению E[f]=K f (n+1) (c), ( 1.3 ) где К – определенный коэффициент, n – степень точности. 1.2 Анализ литературных источников В зависимости от вида выражения квадратуры для нахождения значения определенного интеграла используются следующие числен ные методы : 1) правых , левых и средних прямоугольников ; 2) трапеций ; 3) формулы Симпсона и Буля ; 4) Монте-Карло ; 5) формулы Гаусса-Лежандра, 6) рекуррентные формулы. В зависимости от степени производной , учитываемой численным методом , определяется степень точности метода. Шаг интегрирования может быть постоянным на всём расчётном интервале аргумента X или изменяться в зависимости от величины ошибки определения функции. 1.3 Расчётные формулы метода Составная формула Буля с порядком m =4 имеет вид ( 1 ) 2 Разработка алгоритма решения задачи 2.1 Описание данных , используемых для решения задач В данной задаче использовались следующие данные : 1) исходные (входные )данные : - начало отрезка а ; - конец отрезка b ; - точность. 2) выходные результаты решения : -значение интеграла. 2.2 Описание схемы программы Схема алгоритма составлена в соответствии с м атематическим описанием курсовой работы и отображает последовательность операций в программе . При ее изображении ис пользуются правила и требования ГОСТ 19.701.90. Произведено выделение основных этапов в виде подпрограмм , выполняющих сле дующие действия : а ) ввод исходных данных с клавиатуры ; б ) выполнение расчета ; в ) вывод полученных результатов на экран и в файл. Все подпрограммы выполнены в виде процедур [2]. Основные процедуры и про грамма выполнены на листе . При этом описание функционального назначен ия блоков схемы алгоритма приведено в комментариях. 3 Кодирование программы 3.1 Описание структуры разрабатываемого пакета Программа курсовой работы разработана в среде визуального программирования CBuilder 5.0 и состоит из головной программы , блоков Unit1, Unit2, Unit3. Программа выполнена на основе структурного программирован ия и содержит следующие процедуры и функции : а ) f; б ) Воо l . 3.2 Описание используемых типов данных В данной задаче использовались следующие типы данных : 1) переменная : a,b,e,I ,h,s,N типа float; 2) локальные переменные для перебора элементов массивов : i , j , k типа int ; 3.3 Проектирование интерфейса программы Основные процедуры , использ уемые при составлении алгоритма : а ) f -вызывает расчётную функцию ; б ) Bool - расчёт определённого интеграла. 4 Тестирование программы 4.1 Тестирование программы в математическом пакете. 4.2 Тестирование программы Для тестирования использована функция f ( x )=5* x 5 - x 3 . Рисунок 1- Основное окно. Рисунок 2 – Ввод данных. Тестирование проводилось на ЭВМ со следующими характеристиками : - центральный процессор – Intel Pen tium 2.2 GHz; - оперативная память – 1024 Mb ; - видеоадапте р – GeForce 4 64 Mb; - монитор – Sony Trinitron; - операционная система – Windows XP . 5 Разработка гипертекстового варианта документа Рисунок 3-Гипертекстовый вариант Для перевода текста программы в формат HTML использовалась команда приложения MicrosoftWord (пакета Office XP ) “Сохранить как Web -страницу”. Вид полученного документа , отображаемого Int ernetExplorer 5.0 представлен на рисунке 3. Заключение В данной кур совой работе разработана программа расчета определенного интеграла по формуле Буля по схеме двойного пересчета с заданной точностью При работе над программой пройдены все этапы создания программных продуктов . Получены навыки в математическом описани и задачи , разработке алгоритма программы , составлении текста программы и проведении тестирования программы . Использована система программирования C Builder v 5.0. Список использованных источников 1 Крылов В.И . Вычислительные методы высшей математики . Т .1./ Под ред . И.П . Мысовских . — Мн .: Вышэйшая школа , 1972. 2 Мудров А.Е . Численные методы для ПЭВМ на языках Бейсик , Фортран , Паскаль - Томск : МП Таско ", 1992 3 Херхагер М ., Партолль X. MathCAD 2000; полное руководство : Пер . с нем . - К .: Издательская группа BHV, 2000. - 416с. 4 Гусак А.А ., Гусак ГМ . Справочник по высшей математике . - Мн .: Наука и тех ника , 1991. Приложение А (обязательное ) Твёрдая копия Project1.cpp //--------------------------------------------------------------------------- #include #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->Cr eateForm(__classid(TForm1), &Form1); Application->CreateForm(__classid(TForm2), &Form2); Application->CreateForm(__classid(TForm3), &Form3); Application->Run(); catch (Exception &exceptio n) Application->ShowException(&exception); return 0; //--------------------------------------------------------------------------- Unit1.cpp //--------------------------------------------------------------------------- #include #include #include #pragma hdrstop #include "Unit1.h" #include "Unit2.h" #include "Unit3.h" #include //--------------------------------------------------------------------------- #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) : T Form(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 #include #pragma hdrstop #include "Unit2.h" //--------------------------------------------------------------------------- #pragma package(smart_ini t) #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 EConvertErro r &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 T Form2::FormCreate(TObject *Sender) Edit1->Text=FloatToStr(a); Edit2->Text=FloatToStr(b); Edit4->Text=FloatToStr(e); //--------------------------------------------------------------------------- void __fastcall TForm2::GroupBox1Click(TObject *Sender ) //--------------------------------------------------------------------------- Unit3.cpp //--------------------------------------------------------------------------- #include #pragma hdrstop #include "Unit3.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma link "PERFGRAP" #pragma resource "*.dfm" TForm3 *Form3; extern float I[2]; //--------------------------------------------------------------------------- __fastcall TFo rm3::TForm3(TComponent* Owner) : TForm(Owner) //--------------------------------------------------------------------------- void __fastcall TForm3::BitBtn1Click(TObject *Sender) Form3->Close(); //--------------------------------------------------------------------------- void __fastcall TForm3::FormCreate(TObject *Sender) SaveDialog1->InitialDir= GetCurrentDir(); Edit1->Text=FloatToStr(I[1]); //--------------------------------------------------------------------------- void __fastcall TForm3::Button1Click(TObject *Sender) TStringList *s; s= new TStringList; SaveDialog1->Execute(); s->Add(" Значение интеграла равно "+FloatToStr(I[1])); s->SaveToFile(SaveDialog1->FileName); delete s; //--------------------------------------------------------------------------- void __fastcall TForm3::Label1Click(TObject *Sender) //--------------------------------------------------------------------------- Приложение Б Результаты тестирования программы. Рисунок 4 - Результат тестирования Приложение В. Тестирование данных в математическом пакете. Приложение Г Гипертекстовый вариант документа 1 Постановка задачи
1 Постановка задачи

1.1 Общая характеристика задачи

 < o:p>

Численное интегрирование используется для приближенного поиска значения определенного интеграла непрерывной функции < span lang=EN-US style='font-size:14.0pt;mso-bidi-font-size:12.0pt;mso-ansi-language: EN-US'>f(x) на заданном интервале [ a , b ] согласно выражению < o : p >

, ( 1.1 )

где Q[f] – формула численного интегрирования ;< o : p >

E[f] – ошибка усечения .

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

( 1.2 )

 

Приложение Д Акт приёмки программы Разработанная в ходе выполнения курсов ого проекта программа расчета определенного интеграла по формуле Буля по схеме двойного пересчета с заданной точностью работоспособна и полностью соответствует требованиям задания. Студент гр . ЭП -012 Гончаров А.М. Руководитель работы стар ший преподаватель кафедры «ЭП и АПУ» Абрашкин В.П.
1Архитектура и строительство
2Астрономия, авиация, космонавтика
 
3Безопасность жизнедеятельности
4Биология
 
5Военная кафедра, гражданская оборона
 
6География, экономическая география
7Геология и геодезия
8Государственное регулирование и налоги
 
9Естествознание
 
10Журналистика
 
11Законодательство и право
12Адвокатура
13Административное право
14Арбитражное процессуальное право
15Банковское право
16Государство и право
17Гражданское право и процесс
18Жилищное право
19Законодательство зарубежных стран
20Земельное право
21Конституционное право
22Конституционное право зарубежных стран
23Международное право
24Муниципальное право
25Налоговое право
26Римское право
27Семейное право
28Таможенное право
29Трудовое право
30Уголовное право и процесс
31Финансовое право
32Хозяйственное право
33Экологическое право
34Юриспруденция
 
35Иностранные языки
36Информатика, информационные технологии
37Базы данных
38Компьютерные сети
39Программирование
40Искусство и культура
41Краеведение
42Культурология
43Музыка
44История
45Биографии
46Историческая личность
47Литература
 
48Маркетинг и реклама
49Математика
50Медицина и здоровье
51Менеджмент
52Антикризисное управление
53Делопроизводство и документооборот
54Логистика
 
55Педагогика
56Политология
57Правоохранительные органы
58Криминалистика и криминология
59Прочее
60Психология
61Юридическая психология
 
62Радиоэлектроника
63Религия
 
64Сельское хозяйство и землепользование
65Социология
66Страхование
 
67Технологии
68Материаловедение
69Машиностроение
70Металлургия
71Транспорт
72Туризм
 
73Физика
74Физкультура и спорт
75Философия
 
76Химия
 
77Экология, охрана природы
78Экономика и финансы
79Анализ хозяйственной деятельности
80Банковское дело и кредитование
81Биржевое дело
82Бухгалтерский учет и аудит
83История экономических учений
84Международные отношения
85Предпринимательство, бизнес, микроэкономика
86Финансы
87Ценные бумаги и фондовый рынок
88Экономика предприятия
89Экономико-математическое моделирование
90Экономическая теория

 Анекдоты - это почти как рефераты, только короткие и смешные Следующий
Василий знал себе цену.
Цена эта была, скажем прямо, невысокой.
Anekdot.ru

Узнайте стоимость курсовой, диплома, реферата на заказ.

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

Смотрите также:


Банк рефератов - РефератБанк.ру
© РефератБанк, 2002 - 2016
Рейтинг@Mail.ru