Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 Аватар для xamelione25
-4 / 5 / 2
Регистрация: 04.02.2013
Сообщений: 1,860

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

24.10.2016, 18:14. Показов 445. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Данная программа считает интегралы "методом Симпсона". В чем у меня ошибка ???? В последствии чего у меня в решении второго интеграла вместо ответа пишется NaN. Хотя когда я решал это в параллельной программе "методом трапеций" то у меня данный интеграл решался а здесь что-то пошло не так.

МЕТОД СИМПСОНА (В НЕМ ВОПРОС)
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
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
92
93
94
95
96
97
98
99
100
program simpson;
uses crt;
function f1(x1:real):real;
begin 
f1:=(x1*x1+1)/((x1*x1*x1+3*x1+1)*(x1*x1*x1+3*x1+1));
end;
function f2(x2:real):real;
begin 
f2:=(arcsin(x2))/(sqrt(1+x2));
end;
function f3(x3:real):real;
begin 
f3:=1/(x3+1);
end;
function f4(x4:real):real;
begin 
f4:=sin(x4)/(5+3*sin(x4));
end;
 
 
procedure simpson1 (a1,b1,h1,s1,x1:real; i,n1:integer);
begin
clrscr;
a1:=0; b1:=1; 
n1:=40; 
h1:=(b1-a1)/n1/2; 
s1:=0;
x1:=a1; 
for i:=1 to n1 do begin x1:=x1+2*h1; s1:=s1+2*f1(x1)+4*f1(x1-h1); end;
s1:=h1/3*(f1(a1)-f1(b1)+s1);
textcolor(11);
writeln('a1=',a1);
writeln('b1=',b1);
writeln('n1=',n1);
writeln('f1(x1)=',s1:0:6);
readln;
end;
 
procedure simpson2 (a2,b2,h2,x2,s2:real; i,n2:integer);
begin
clrscr;
a2:=0; b2:=1; 
n2:=5130; 
h2:=((b2-a2)/n2)/2; 
s2:=0;
x2:=a2; 
for i:=1 to n2 do begin x2:=x2+(2*h2); s2:=s2+(2*f2(x2))+(4*f2(x2-h2)); end;
s2:=h2/3*((f2(a2)-f2(b2))+s2);
textcolor(15);
writeln('a2=',a2);
writeln('b2=',b2);
writeln('n2=',n2);
writeln('f2(x2)=',s2:0:6);
readln;
end;
 
procedure simpson3 (a3,b3,h3,s3,x3:real; i,n3:integer);
begin
clrscr;
a3:=0; b3:=1; 
n3:=500; 
h3:=(b3-a3)/n3/2; 
s3:=0;
x3:=a3; 
for i:=1 to n3 do begin x3:=x3+2*h3; s3:=s3+2*f3(x3)+4*f3(x3-h3); end;
s3:=h3/3*(f3(a3)-f3(b3)+s3);
textcolor(13);
 
writeln('a3=',a3);
writeln('b3=',b3);
writeln('n3=',n3);
writeln('f3(x3)=',s3:0:6);
readln;
end;
 
procedure simpson4 (a4,b4,h4,s4,x4:real; i,n4:integer);
begin
clrscr;
a4:=0; b4:=pi*0.5; 
n4:=150; 
h4:=(b4-a4)/n4/2; 
s4:=0;
x4:=a4; 
for i:=1 to n4 do begin x4:=x4+2*h4; s4:=s4+2*f4(x4)+4*f4(x4-h4); end;
s4:=h4/3*(f4(a4)-f4(b4)+s4);
textcolor(12);
writeln('a4=',a4);
writeln('b4=',b4);
writeln('n4=',n4);
writeln('f4(x4)=',s4:0:6);
readln;
end;
 
begin
simpson1(1,1,1,1,1,1,1);
simpson2(1,1,1,1,1,1,2);
simpson3(1,1,1,1,1,1,3);
simpson4(1,1,1,1,1,1,4);
 
end.

МЕТОД ТРАПЕЦИЙ
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
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
Program Trapecii;
uses crt;
 
function f1(x1:real):real;
begin 
f1:=(x1*x1+1)/((x1*x1*x1+3*x1+1)*(x1*x1*x1+3*x1+1));
end;
function f2(x2:real):real;
begin 
f2:=(arcsin(x2))/(sqrt(1+x2));
end;
function f3(x3:real):real;
begin 
f3:=1/(x3+1);
end;
function f4(x4:real):real;
begin 
f4:=sin(x4)/(5+3*sin(x4));
end;
 
procedure trap1(b1,h1,s1,x1:real; a1,n1,i:integer);
begin
textcolor(11);
writeln('Введите a1,b1,n1'); readln(a1,b1,n1);
h1:=(b1-a1)/n1;
x1:=a1;
s1:=2*f1(x1);
for i:=1 to (n1-1) do begin x1:=x1+h1; s1:=s1+2*f1(x1); end;
s1:=h1/2*(s1+f1(b1));
textcolor(11);
writeln('a1','=',a1,' b1','=',b1,' S1','=',s1:0:6);
readln;
end;
 
procedure trap2(a2,b2,h2,s2,x2:real; n2,i:integer);
begin
textcolor(15);
writeln('Введите a2,b2,n2'); readln(a2,b2,n2);
h2:=(b2-a2)/n2;
x2:=a2;
s2:=2*f2(x2);
for i:=1 to (n2-1) do begin x2:=x2+h2; s2:=s2+2*f2(x2); end;
s2:=h2/2*(s2+f2(b2));
textcolor(15);
writeln('a2','=',a2,' b2','=',b2,' S2','=',s2:0:6);
readln; 
end;
 
procedure trap3(a3,b3,h3,s3,x3:real; n3,i:integer);
begin
textcolor(13);
writeln('Введите a3,b3,n3'); readln(a3,b3,n3);
h3:=(b3-a3)/n3;
x3:=a3;
s3:=2*f3(x3);
for i:=1 to (n3-1) do begin x3:=x3+h3; s3:=s3+2*f3(x3); end;
s3:=h3/2*(s3+f3(b3));
textcolor(13);
writeln('a3','=',a3,' b3','=',b3, ' S3','=',s3:0:6);
readln;
end;
 
procedure trap4(a4,b4,h4,s4,x4:real; n4,i:integer);
begin
textcolor(12);
writeln('Введите a4,b4,n4'); readln(a4,b4,n4);
h4:=(b4-a4)/n4;
x4:=a4;
s4:=2*f4(x4);
for i:=1 to (n4-1) do begin x4:=x4+h4; s4:=s4+2*f4(x4); end;
s4:=h4/2*(s4+f4(b4));
textcolor(12);
writeln('a4','=',a4,' b4','=',b4,' S4','=',s4:0:6);
readln;
end;
 
begin
trap1(1,1,1,1,1,1,1);
trap2(1,1,1,1,1,1,2);
trap3(1,1,1,1,1,1,3);
trap4(1,1,1,1,1,1,4);
end.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
24.10.2016, 18:14
Ответы с готовыми решениями:

Найти определенный интеграл методом трапеции и симпсона
y=sin(x+ln(x)) из данного выражения найти определенный интеграл методом трапеции и симпсона \int_{a}^{b}f(x)dx

Интеграл, решенный методом симпсона и прямоугольника, растолковать код
Это интеграл решенный методом симпсона и прямоугольника, я не могу въехать в эти задачи, у меня идентичные на решение, думаю после...

Вычислить интеграл методом трапеций
помогите пожалуйста, буду очень благодарен, паскаль Вычислить интеграл методом трапеций \int_{0.2}^{1}\frac{x}{\sin ^2(3x)}dx

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
24.10.2016, 18:14
Помогаю со студенческими работами здесь

Вычислить интеграл методом трапеции
Найти методом трапеций, разбивая отрезок интегрирования на n = 22. \int_{0}^{\frac n2} \sin ^2x Так же найти с...

Вычислить интеграл методом прямоугольников
Помогите пожалуйста, уже не первый день сижу: С погрешностью 0.001 вычислить по методу прямоугольников:

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

Решение интеграла методом Симпсона
Имеется такой интеграл: интеграл 1/(1+x*x*x) от x=0 до бесконечности. Решить с помощью метода Симпсона с точностью 0.00001. Не понимаю...

Вычисление определенного интеграла методом Симпсона
Добрый день. Задача: Написать процедуру вычисления определенного интеграла методом Симпсона. У меня такой вопрос, если пределы...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Контроль корректности заполнения дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru