/ / res - значення потрійного інтеграла;
/ / INT3P - процедура обчислення потрійного інтеграла по прямокутній
/ / області D=[a1, a2] x [b1, b2] x [c1, c2] використовує кубатурних
/ / формулу з 34 вузлами і алгебраїчним порядком точності 7;
/ / aa1, bb1, cc1, cc2 - коефіцієнти кубатурних формули;
/ / v1, s1, e1, e2 - вузли кубатурних формули.=0.2957476;=0.0941015;=0.2247031;=0.4123338;// Коефіцієнти кубатури=0.9258200;=0.9258200;=0.7341125;=0.4067031;// Вузли, y0, z0, dx, dy, dz, sum1, sum2, sum3, sum4: real;, j, k, l, i3, j2, j5: integer;:=(a1 + a2) / 2;: =(b1 + b2) / 2;:=(c1 + c2) / 2;:=(a2 - a1) / 2;:=(b2 - b1) / 2;:=(c2 - c1) / 2;: =f (x0 + dx * v1, y0, z0) + f (x0 - dx * v1, y0, z0) + (x0, y0 + dy * v1, z0) + f (x0, y0 - dy * v1, z0 ) + (x0, y0, z0 + dz * v1) + f (x0, y0, z0 - dz * v1);:=0;:=0;:=0; j:=1 to 4 do (j mod 2 )=0 then:=1:=- 1;:=i div 3; (i3 mod 2)=0 then:=1:=- 1;:=sum2 + f (x0 + i * dx * s1, y0 + k * dy * s1, z0) + (x0 + i * dx * s1, y0, z0 + k * dz * s1) + (x0, y0 + i * dx * s1, z0 + k * dz * s1);; j:=1 to 8 do (j mod 2)=0 then:=1:=- 1;:=(j + 1) div 2; (j2 mod 2)=0 then:=1:=- 1;: =j div 5; (j5 mod 2)=0 then:=1:=- 1;:=sum3 + f (x0 + i * dx * e1, y0 + k * dy * e1, z0 + l * dz * e1 );:=sum4 + f (x0 + i * dx * e2, y0 + k * dy * e2, z0 + l * dz * e2);;:=(aa1 * sum1 + bb1 * sum2 + cc1 * sum3 + cc2 * sum4) * dx * dy * dz;; TForm1.cmdExitExecute (Sender: TObject);
/ / Закриття головної форми;; TForm1.cmdIntegrExecute (Sender: TObject);
/ / розрахунок інтегралів і висновок рішення, a2, b1, b2, c1, c2, res: real;:=StrToFloat (Edit1.text);:=StrToFloat (Edit2.text);:= StrToFloat (Edit3.text);:=StrToFloat (Edit4.text);:=StrToFloat (Edit5.text);:=StrToFloat (Edit6.text); EConvertError do («Помилка в записі вихідних даних!");; ;; P (a1, a2, b1, b2, c1, c2, res);. Caption:=«Значення інтеграла» + Format («% 5.5f», [res]);;.