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

Курсовая

Вычисление интеграла с помощью метода трапеций на компьютере

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

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

закрыть
Категория: Курсовая работа
Язык курсовой: Русский
Дата добавления:   
 
Скачать
Microsoft Word, 471 kb, скачать бесплатно
Обойти Антиплагиат
Повысьте уникальность файла до 80-100% здесь.
Промокод referatbank - cкидка 20%!

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




МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ СТРОИТЕЛЬНЫЙ УНИВЕРСИТЕТ












КУРСОВАЯ РАБОТА

тема:

«Вычисление определённого интеграла

с помощью метода трапеций

на компьютере»








Выполнил:

студент ф-та

ЭОУС-1-12

Зыков И.


Принял:

Зоткин С. П.











Москва 2001

  1. Введение:


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

Пусть I= f(x)dx, где f(x) – непрерывная функция, которую мы для наглядности будем предполагать положительной. Тогда I представит собой площадь криволинейной трапеции, ограниченной линиями x=a, x=b, y=0, y=f(x). Выберем какое-нибудь натуральное число n и разложим отрезок [a,b] на n равных отрезков при помощи точек x0=a1<…n=b. Прямые x=xi разбивают интересующую нас криволинейную трапецию на n полосок. Примем каждую из этих полосок за обыкновенную прямолинейную трапецию (рис. 1, где n=4).

рис. 1

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

((f(x0)+f(x1))/2)*(x1-x0)=((y0+y1)/2)*((b-a)/n),

ибо основания трапеции, за которую мы принимаем полоску, равны f(x0)=y0 и f(x1)=y1, а высота её

x1-x0=(b-a)/n.

Аналогично площади дальнейших полосок выразятся числами

(y1+y2)*((b-a)/2*n), (y2+y3)*((b-a)/2*n), … , (yn-1+yn)*((b-a)/2*n).

Значит, для нашего интеграла получается формула

I((b-a)/2*n)*[y0+2*(y1+…+yn-1)+yn].

Пологая для краткости y0+yn=Yкр (крайние), y1+y2+…+yn-1=Yпром (промежуточные), получим

 ydx  ((b-a)/2* n)*(Yкр+2*Yпром)



Эту формулу можно записать в другом виде


 f(x)dx  (h/2)*[f(a)+f(b)+2f(xi)]

(где h – длина одного из n равных отрезков, xi=a+i*h). Эта приближенная формула и называется формулой трапеций. Она оказывается тем более точной, чем больше взятое нами число n. Погрешность одного шага вычисляется по формуле: -(h^3)/12.

Задача. Пусть нужно проинтегрировать функцию f(x) = x? +2x?-3x-8  на отрезке [0, 6]. На этом отрезке функция непрерывна.

Для выполнения поставленной задачи составлена нижеописанная программа, приближенно вычисляющая определенный интеграл с помощью метода трапеций. Программа состоит из трех функций main, f и trap. Функция main позволяет ввести интервалы интегрирования и задать точность вычисления интеграла, а также вызывает функцию trap для вычисления интеграла и распечатывает на экране результат. Функция f принимает аргумент x типа float и возвращает значение интегрируемой функции в этой точке. Trap – основная функция программы: она выполняет все вычисления, связанные с нахождением определенного интеграла. Trap принимает четыре параметра: пределы интегрирования типа float (a и b), допустимую относительную ошибку типа float и указатель на интегрируемую функцию. Вычисления выполняются до тех пор, пока относительная ошибка, вычисляемая по формуле | S-Sn |, не будет меньше или равна требуемой. Функция реализована с экономией вычислений, т. е. учитывается, что S0 постоянная и S1=S1+f(a+(2*i+1)*h), поэтому эти значения вычисляются единожды. Метод трапеций обладает высокой скоростью вычисления, но меньшей точностью, чем метод Симпсона, поэтому его применение удобно там, где не требуется очень высокая точность.

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





  1. Блок-схема программы:















ДА



НЕТ








i=1

i=n/2














  1. Листинг:




#include

#include

#include

main()

{

double a,b,er,eps,f(double),s,trap(double,double,double,double(*)(double));

clrscr();

printf("\n Задайте пределы интегрирования и точность: ");

scanf ("%lf%lf%lf",&a,&b,&eps);

s=trap(a,b,eps,f);

printf("\n Интеграл от a=%3.2lf до b=%3.2lf равен %lf",a,b,s);

getch();

}

double f(double x)

{

return x*x*x+2*(x*x)-3*x-8;

}

double trap(double a,double b,double eps,double(*f)(double))

{

double h,s,s0,s1,sn;

int i,n;

s=1; sn=101;

n=4;

s0=(f(a)+f(b))/2;

s1=f((a+b)/2);

while(fabs(s-sn)>eps){

sn=s;

h=(b-a)/n;

for(i=0; i

s1+=f(a+(2*i+1)*h);

s=h*(s0+s1);

n*=2;

}

return s;

}



  1. Спецификации:


Имя переменной

Тип

Назначение

n

int

число разбиений отрезка [a, b]

i

int

счетчик циклов

a

double

Нижний предел интегрирования

b

double

Верхний предел интегрирования

h

double

шаг разбиения отрезка

eps

double

допустимая относительная ошибка

f

double(*)

указатель на интегрируемую фун - цию

x

double

аргумент ф-ии f

s

double

текущий результат интегрирования

s0

double

половина суммы значений функции в точках a и b

s1

double

сумма значений функции в промежуточных точках

sn

double

предыдущий результат интегрирования



  1. Ручной счет:


Xi

Yi

0

-8

0,75

-8,703125

1,5

-4,625

2,25

6,765625

3

28

3,75

61,609375

4,5

110,125

5,25

176,078125

6

262








  1. Результат работы программы:

при eps = 0.1 при eps = 0.001

Введите a, b, eps: Введите a, b, eps:

0 0

6 6

.1 .001

Интеграл= 366.024170 Интеграл= 366.000094


т.е с помощью этой программы можно вычислить интеграл от функции с точностью до 1/10000.

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Экономико-математическое моделирование
91Экономическая теория

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

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

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

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


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