Function INF(X:real):real; begin INF:=FUNC(1 / X) / Sqr(X); End; procedure MIDINF(AA, BB:real; var S:real; N:integer); var A,B,TNM,X,DEL,DDEL,SUM:real; J:integer; begin B:=1 / AA; A:=1 / BB; If N = 1 Then begin S:=(B - A) * INF(0.5 * (A + B)); IT:=1; end Else begin IT:=Round(EXP((N-2)*Ln(3))); TNM:=IT; DEL:=(B - A) / (3 * TNM); DDEL:=DEL + DEL; X:=A + 0.5 * DEL; Sum:=0; For J:=1 To IT do begin Sum:=Sum + INF(X); X:=X + DDEL; Sum:=Sum + INF(X); X:=X + DEL; end; S:=(S + (B - A) * Sum / TNM) / 3; //IT:= 3 * IT; end; end;