2 / 1 / 0
Регистрация: 28.03.2010
Сообщений: 82
1

вычисление интеграла

14.04.2010, 18:45. Показов 3036. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Даны вещественные числа a, b. Значения функции f(x)=(x+1)2√lg x; a=2; b=10;
записать в массив. Вычислить значение интеграла, используя:
1) Формулу трапеций

I1=h*[f(a)/2+f(a+h)+f(a+2h)+…+f(a+(n-1)h)+f(b)/2]


2) Формулу Симпсона

I2=h/3*(f(a)+f(b)+4*(f(a+h)+f(a+3h)+…+f(a+(n-1)h))+

2*(f(a+2h)+f(a+4h)+…+f(a+(n-2)h)))


h=(b-a)/n, n=100.

Вот такие соображения по алгоритму: расчёт выполняем по формулам (формулы даны) .Объявим массив func[n+1], где n - количество отсчётов функции на интервале от а до b , запмсываем знач-я функции в массив, (шаг вычисляем (b-a)/n ,аргумент ф-ии a+i*h, где i параметр цикла, меняющийся от 0 до n ( т. е. всего n значений). массив используем для вычислений по обеим формулам. в первой формуле сумма знач-й массива от 1 до n-1, плюс граничные func[0]/2+ func[n]/2 и умножаем на шаг(h). Во второй форм. две суммы - нечётные и чётные значения сумм-ся отдельно и потом по формуле находится общая сумма.
Помогите с кодом.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.04.2010, 18:45
Ответы с готовыми решениями:

Вычисление интеграла
Необходимо вычислить интеграл (сам интеграл задан функцией, например Functoin) методом правых...

Вычисление интеграла
Представить интеграл в виде ряда и вычислить его, используя функцию цикла. Границы интервала и шаг...

Вычисление интеграла
задача такая Вычислить с точностью\varepsilon интеграл ,где y=f(x) - прямая проходящая через...

Вычисление интеграла
Нужно вычислить интеграл двумя способами: метод прямоугольников и метод трапеции. Методом...

5
3 / 3 / 0
Регистрация: 13.04.2010
Сообщений: 23
15.04.2010, 10:39 2
Только свои значения подставь, я думаю разберёшься где


C
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
//Lab 2_2_1
//Integral po formule tropecii
#include <STDIO.h>
#include <MATH.h>
#include <CONIO.h>
#define n 100
int i;
float a, b, h, x, s, sn, f[n];
main()
{
clrscr ();
a=0.5; b=2.5;
h=(b-a)/n;
f[1]=pow(a,2)*sqrt(pow((2+3*a),3));
f[100]=pow(b,2)*sqrt(pow((2+3*b),3));
for(i=1; i<n; i++)
         {
         x=(a+i*h);
         f[i]=pow(x,2)*sqrt(pow((2+3*x),3));
         sn+=f[i];
         }
s=(h/2)*(f[1]+f[100]+2*sn);
printf ("\nZnachenie integrala s=%f", s);
getch ();
}
 
 
 
//Lab 2_2_2
//Integral po formule Simpsona
#include <STDIO.h>
#include <MATH.h>
#include <CONIO.h>
#define n 100
int i;
float a, b, h, x, s, s1, s2, f[n];
main()
{
clrscr ();
a=0.5; b=2.5;
h=(b-a)/n;
f[1]=pow(a,2)*sqrt(pow((2+3*a),3));
f[100]=pow(b,2)*sqrt(pow((2+3*b),3));
for(i=1; i<n-1; i++)
         {
         x=(a+i*h);
         if (i%2==0)
            {
            f[i]=pow(x,2)*sqrt(pow((2+3*x),3));
            s1+=f[i];
            }
         else
            {
            f[i]=pow(x,2)*sqrt(pow((2+3*x),3));
            s2+=f[i];
            }
 
         }
 
s=(h/3)*(f[1]+f[100]+(2*s1)+(4*s2));
printf ("\nZnachenie integrala s=%f", s);
getch ();
}
1
2 / 1 / 0
Регистрация: 28.03.2010
Сообщений: 82
15.04.2010, 12:37  [ТС] 3
C
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
#include<stdio.h>
#include<math.h>
#define n 100
const double a=2.0, b=10.0;
const double h=(b-a)/n;
double func[n+1];
double f(double x)
{
return(x+1)*2*sqrt(log10(x));
}
double trapecii()
{
double result=0.0;
for(int i=0; i<n; ++i)
result+=(func[i]+func[i+1])*h/2;
return result;
}
double simpson()
{
double result=0.0;
result+=(func[0]+func[n])*h/3;
for(int i=1; i<n; i+=2)
result +=4*h/3*func[i];
for( i=2; i<n; i+=2)
result +=2*h/3*func[i];
return result;
}
void main()
{
for(int i=0; i<=n; ++i)
func[i]=f(a+i*h);
double I1, I2;
I1=trapecii();
I2=simpson();
printf("%f\n%f\n",I1,I2);
scanf("%F%f",I1,I2);
}
спасибо.у меня вот такой вариант еще есть.
0
3 / 3 / 0
Регистрация: 13.04.2010
Сообщений: 23
15.04.2010, 14:11 4
Да забыл сказать, на моём примере ответы различаются / может погрешность такая при расчёте разными формулами/ я ещё не разбирался с этим.
У тебя 6 вариант?
0
2 / 1 / 0
Регистрация: 28.03.2010
Сообщений: 82
15.04.2010, 14:16  [ТС] 5
у меня 3-й, интегралы должны быть приблизительно равны до 3 значащих цифр, я отправил свой вариант на проверку.
0
3 / 3 / 0
Регистрация: 13.04.2010
Сообщений: 23
15.04.2010, 16:49 6
Я ещё не отправлял
0
15.04.2010, 16:49
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.04.2010, 16:49
Помогаю со студенческими работами здесь

Вычисление интеграла
вычислить интеграл \int_{0}^{6}\frac{exp^sqrt{\frac{6-x}{6+x}}}{(6+x)*\sqrt{36-x^2}} помогите...

Вычисление интеграла
не могу понять как решить....:wall: помогите }int main() { int i; double I; double n, h,...

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

Вычисление интеграла
Считаю интеграл на промедутке от -1 до 3... Интеграл a*a*a*a. Точность вычисления 0.00001... Код...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru