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

Вычислить интеграл методом Симпсона

11.10.2010, 23:04. Показов 33023. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
помогите, пожалуйста, кто сможет, написать программу
вот

Вычислить приближённое значение интеграла от функции F(x)=exp(2*x)-exp(x)-ln(abs(x)+1)*cos(x) на отрезке [0;1] с точностью е=0,0001. Использовать метод Симпсона
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.10.2010, 23:04
Ответы с готовыми решениями:

Вычислить интеграл по формуле Симпсона
Нужно вычислить интеграл по формуле симпсона. Интеграл sin^3 xdx/1+x^4 . Вверхняя граница...

Вычислить по формуле Симпсона при 2 m=10 определенный интеграл (cos(x)/1+x)dx
Блин ребят выручите.Никак не понимаю как написать эту прогу( Буду очень благодарен!Прога нужна на...

Вычислить определённый интеграл методом трапеций
2. Вычислить на ПК значение интеграла на заданном отрезке .Число разбиений отрезка интегрирования и...

Интеграл метод симпсона
всем день добрый....проввертье пожалуйста...ужно вычислить интеграл по формуле симпсона с...

9
Почетный модератор
64291 / 47589 / 32740
Регистрация: 18.05.2008
Сообщений: 115,181
12.10.2010, 14:18 2
emachines, Пользуйтесь поиском. Эти Симпсоны и трапеции уже столько раз писали...
0
0 / 0 / 0
Регистрация: 10.10.2010
Сообщений: 15
14.10.2010, 12:09  [ТС] 3
без коментарий, кстати, трудно разобраться.
я уже посмотрел примеры, но неочень-то понял! час сидел и разбирал "тамшний" код...
Сможете, пожалуйста, написать программу с коментарием на данный пример! а то трудно разбирать человеку, кто только в начале сентября начел изучать программирование!
0
Почетный модератор
64291 / 47589 / 32740
Регистрация: 18.05.2008
Сообщений: 115,181
14.10.2010, 12:15 4
emachines, Если Вы умеете находить интегралы численными методами на бумаге, то вы легко поймете алгоритм, если не умеете, то не поймете даже с комментарием каждой буквы. Лень учить, понимать, разбираться, есть раздел Фриланс, там вам за плату напишут любые комментарии.
0
0 / 0 / 0
Регистрация: 10.10.2010
Сообщений: 15
15.10.2010, 17:12  [ТС] 5
значит не поможете?

Добавлено через 18 часов 54 минуты
Сможете проверить, а то выводит ошибку 4

Pascal
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
Program integrali;
const eps=0.0001;                       {h- visota}
var   h,I1,I2,k,i,y,x:real;
      i,n:integer;
begin
     readln(x);
     n:=0;
     I1:=0;
     repeat
     I2:=I1;            {I1 tekushchee znachenie, I2 predidushchee znachenie}
     n:=n+1;                 {pri absolyoutnoi tochnosti}
     I1:=0;
     h:=1/n;               {iz formuli H=(b-a)/n}
     for i:=0 to n do
        begin
        x:=i/n;              {Xi=A+i*H=0+i*1/n}
        y:=exp(2*x)-exp(x)-ln(abs(x)+1)*cos(x);
        if i=0 or i=n then
        I1:=I1+y
         else if i mod 2=0
         then I1:=I1+2*y
         else I1:=I1+4*y;
        end;
     I1:=I1*h/3;
     writeln (I1);
     k:=abs(I1-I2);    {k- uslovia vihoda}
     if I2=0 then k:=1;
     untiln (k<=e) and (k>=0);
end.
0
Почетный модератор
64291 / 47589 / 32740
Регистрация: 18.05.2008
Сообщений: 115,181
15.10.2010, 17:16 6
Цитата Сообщение от emachines Посмотреть сообщение
var * h,I1,I2,k,i,y,x:real;
* * * i,n:integer;
Разберитесь с переменными, букв что ли мало?
0
0 / 0 / 0
Регистрация: 10.10.2010
Сообщений: 15
15.10.2010, 17:45  [ТС] 7
а почему она у меня вычисляет бесконечно?????

Pascal
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
Program integral;
const eps=0.0001;                       {h- visota}
var   h,I1,I2,k,y,x:real;
      i,n:integer;
begin
     write('Vvedite x');
     readln(x);
     n:=0;
     I1:=0;
     repeat
     I2:=I1;            {I1 tekushchee znachenie, I2 predidushchee znachenie}
     n:=n+1;                 {pri absolyoutnoi tochnosti}
     I1:=0;
     h:=1/n;               {iz formuli H=(b-a)/n}
     for i:=0 to n do
        begin
        x:=i/n;              {Xi=A+i*H=0+i*1/n}
        y:=exp(2*x)-exp(x)-ln(abs(x)+1)*cos(x);
        if (i=0) or (i=n) then
        I1:=I1+y
         else if i mod 2=0
         then I1:=I1+2*y
         else I1:=I1+4*y;
        end;
     I1:=I1*h/3;
     writeln (I1);
     k:=abs(I1-I2);    {k- uslovia vihoda}
     if I2=0 then k:=1;
     until (k<=eps) and (k>=0);
end.
0
Почетный модератор
64291 / 47589 / 32740
Регистрация: 18.05.2008
Сообщений: 115,181
15.10.2010, 17:58 8
Цитата Сообщение от emachines Посмотреть сообщение
а почему она у меня вычисляет бесконечно?????
Извините, но я не понимаю этот код.
0
0 / 0 / 0
Регистрация: 10.10.2010
Сообщений: 15
15.10.2010, 18:03  [ТС] 9
да я же вроде уж коментария написал!
0
Почетный модератор
64291 / 47589 / 32740
Регистрация: 18.05.2008
Сообщений: 115,181
15.10.2010, 18:20 10
Лучший ответ Сообщение было отмечено как решение

Решение

Я бы вообще так написал.

Pascal
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
uses crt;
const
  a = 0;{нижний предел}
  b = 1;{верхний предел}
  e=0.0001;{точность}
function F(x:real):real;
begin
F:=exp(2*x)-exp(x)-ln(abs(x)+1)*cos(x);
end;
 
var n,i:integer;
    h,k,s1,s2: real;
begin
clrscr;
write('Количество разбиений n=');
readln(n);//начальное число
s1:=0;//итоговый интеграл
h:=(b-a)/n;//шаг
s2:=h*F(a);//текущий интеграл
repeat
s1:=s2;//запомним текущий
h:=(b-a)/n;
k:=a;//левый край
for i:=1 to n-1 do
 begin
  k:=k+h;//наращиваем
  if i mod 2 = 0 then s2:=s2+2*f(k)//считаем новый интеграл
  else s2:=s2+4*f(k);
 end;
s2:=(s2+f(a)+f(b))*h/3;//конечное значение
n:=n*2;//если точность не достигнута удваиваем количество разбиений
until abs(s1-s2)<=e;
write('Интеграл=',s2:0:6);
readln
end.
6
15.10.2010, 18:20
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.10.2010, 18:20
Помогаю со студенческими работами здесь

Обчислить интеграл по формуле Симпсона, используя для оценки точности двойной перерасчёт
Хмм..такие вот задачки последние задали... 1. Обчислить интеграл по формуле Симпсона, используя...

Численное интегрирование методом симпсона: блок-схемой!!!
Здравствуйте, доброй ночи, мне к 08.00 утра очень бы пригодилась блок-схема к такой вот программе:...

Вычисление интеграла методом левых и правых частей с постоянным шагом, трапеции и симпсона
в общем один из модулей: написать программу вычисляющую интеграл (любой) методом левых частей с...

Интеграл методом трапеций.
помогите вычислить интеграл методом трапеций от функции sqr(tg(x))+sqr(ctg(x)) на промежутке


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

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

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