иходимо з циклу,
якщо відносна похибка попереднього і поточного інтегралів менше заданої точності
або якщо кількість ітерацій перевищило допустиме}
Integral: = S; {повертаємо значення отриманого Інтергал}
end;
var i, j, n: integer;
begin
{обчислюємо значення перевірочного інтеграла, передаючи у функцію Integral ім'я обчислюється функції
в даному випадку f_test, інтервал інтегрування a = 0 b = 3.14159
cm = 0 dm = 0 (останні два параметри в даному випадку можуть бути будь-якими, тому що f_test від них не залежить)
eps = 1e-3 (точність), в параметр n, після виходу з функції обчислення інтеграла буде записано число ітерацій}
writeln ('перевірки інтеграл від 0 до пі sin (x) dx = ', Integral (f_test, 0,3.14159,0,0,1 e-3, n): 7:5,
'', n, 'ітерацій');
c [1]: = 0.9; c [2]: = 1; c [3]: = 1.05; c [4]: ​​= 1.1; {введення параметрів для першої функції}
d [1]: = 2.4; d [2]: = 2.5; d [3]: = 2.6; eps: = 1e-4;
a: = 0; b: = 3.14159;
writeln ('Інтеграл від', a: 1:0, 'до', b: 5:3, 'функції f1 ',' З точністю ', eps: 5,' при: ');
for i: = 1 to 4 do {перебираємо параметр з}
for j: = 1 to 3 do {перебираємо параметр d}
begin
{обчислюємо значення першого інтеграла, передаючи у функцію Integral ім'я обчислюється функції
в даному випадку f1, інтервал інтегрування a = 0 b = 3.14159
cm = c [i] dm = d [i] (останні два параметри перебираються в циклі і не рівні 0, тому f1 від них залежить)
eps = 1e-4 (точність), в параметр n, після виходу з функції обчислення інтеграла буде записано число ітерацій}
writeln ('з =', c [i]: 4:2, ' d = ', d [j]: 4:2,' дорівнює ', Integral (f1, a, b, c [i], d [j], eps, n): 8:5,' ', n,' ітерацій ');
end;
readln; {очікуємо натискання клавіші enter, інакше всі виведені дані не помістяться на один екран}
c [1]: = 3; c [2]: = 3.2; c [3]: = 3.4; c [4]: ​​= 3.5; {введення параметрів для першої функції}
d [1]: = 0.5; d [2]: = 0.4; d [3]: = 0.85; eps: = 1e-3;
a: = 1; b: = exp (1); {b = e}
writeln ('Інтеграл від', a: 1:0, 'до', b: 5:3, 'функції f2 ',' З точністю ', eps: 5,' при: ');
for i: = 1 to 4 do {перебираємо параметр з}
for j: = 1 to 3 do {перебираємо параметр d}
begin
{обчислюємо значення другого інтеграла, передаючи у функцію Integral ім'я обчислюється функції
в даному випадку f2, інтервал інтегрування a = 1 b = e
cm = c [i] dm = d [i] (останні два параметри перебираються в циклі і не рівні 0, тому f2 від них залежить)
eps = 1e-3 (точність), в параметр n, після виходу з функції обчислення інтеграла буде записано число ітерацій}
writeln ('з =', c [...