ify"> procedure norm (a: real); n: real;
begin
{Якщо число занадто мало - повертається нуль}
if (a <0.00001) then n: = 0begin
{Якщо число менше одиниці} (a <1) then begin
n: = 1;: = a * 10;: = n/10; (trunc (a) <> 0); else begin
{Якщо число більше одиниці}: = 1;
repeat: = a/10;: = n * 10; (trunc (a) = 0);;;
a: = n;;
{Побудова графіка функції}
procedure out_grp (xmin, xmax, ymin, ymax: real);, mode: integer;, my: real; {Масштаби по осях}, yy: real; {Поточні координати}
sx: real; {Крок по осі X}, dlty: integer; {Прирощення на графіку при зміщенні графіка}: string; {Рядок}
{Ініціалізація графіки}
drv: = VGA;: = VGAHi; (drv, mode,'');
{З'ясування порядків мінімумів і максимумів}
norm (xmax); (ymax); (ymin); ymin: = ymin/10; (xmin); ymin: = ymin/10; (xmin/xmax)> 0.01 then dltx: = 20 else dltx: = 0; (ymin/ymax)> 0.01 then dlty: = 20 else dlty: = 0;
{Розрахунок масштабів}: = 500/(xmax-xmin);: = 400/(ymax-ymin);
{Розрахунок збільшення по X}: = (xmax-xmin)/550;
{Висновок системи координат}
settextjustify (1,1);: = xmin; (1); (trunc (40 + mx * (xx-xmin) + dltx), 20, trunc (40 + mx * (xx- xmin) + dltx), 469); (xx: 4:2, s); (15); (trunc (40 + mx * (xx-xmin) + dltx), 475, s);: = xx +50 * sx; (xx> (xmax +50 * sx));: = ymin + (ymax-ymin)/10; (1); (41, trunc (470-my * (yy-ymin) - dlty), 630, trunc (470-my * (yy-ymin) - dlty)); (yy: 4:2, s); (15); (20, trunc (470-my * (yy-ymin) - dlty),
{Висновок графіка}: = xmin;: = f (xx); (trunc (40 + mx * (xx-xmin) + dltx), trunc (470-my * (yy-ymin) - dlty), 7);: = xx + sx; (xx> xmax); (300,10, 'Press ESC to continue'); until (readkey = # 27);;;
{Основна програма}
{Введення кордонів отрезкa}; ('ВИВЕСТИ ІНФОРМАЦІЮ ПРО ПРОГРАМУ? (y/n)'); (I); I = 'y' then
begin ('Програма обчислює наближене значення інтеграла ірраціональної'); ('логарифмічною функції f (x) = x/log (x), яка може бути змінена,'); ('шляхом введення таких параметрів , як коефіцієнт при х у чисельнику; '); (' ступінь, в яку зводиться х у чисельнику; також заснування '); (' логарифма і його ступінь, за методом Сімпсона '); (' Потім вводяться кордону відрізків: А> B , '); (' тому що f (x) неперервна при всіх значеннях x, що задовольняють умовам A <= x <= B '); (' Також, виходячи з визначення логарифма, А і В повинні бути позитивними, ') ; ('а підстава логарифма - більше нуля і не дорівнює 1'...