Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Автоматизация метода






Автоматизация метода прямоугольников позволяет оптимизировать его использование на практике и упростить расчеты.

Программа на Pascal – это набор некоторых команд. Начинается программа с ключевого слова PROGRAM, после которого следует имя программы:

PROGRAM pryam;

Далее идёт раздел переменных VAR, в котором описываются переменные:

VAR

n, i: integer;

a, b, h, l, s, p, lpr, srpr, ppr, lpg, spg, ppg, x1, x2, x3: real;

где:

n – количество разбиений интервала;

a и b – нижний и верхний пределы интегрирования;

h – шаг;

l, s, p – переменные для вычисления суммы по формулам;

lpr, srpr, ppr – переменные результата вычислений без учета погрешности;

lpg, spg, ppg – погрешности или остаточные члены формул метода прямоугольников;

x1, x2, x3 – результативные переменные.

В этом разделе указывается имена переменных и имена типов данных.

После описания переменных вводятся функции. Объявление функции состоит из:

- ключевого слова function, имени функции, списка формальных параметров и типа возвращаемого значения;

- раздела объявления локальных переменных или констант, если он требуется;

- тела функции, заключенного в операторные скобки begin end.

В функции помещаются формулы, по которым будут вычисляться приближенное значение интеграла и вторая производная в точке, принадлежащей промежутку интегрирования:

function f(x: real): real;

begin

f: = Sqr(x)*sin(x);

end;

function f2(x: real): real;

begin

f2: = 2*sin(x)+4*cos(x)-Sqr(x)*sin(x);

end;

После всего этого переходим к основному телу программы. Код программы содержит различные команды. Самые распространенные:

Write (Writeln) – команда вывода текста на экран;

Read (Readln) – запрос данных.

Итак, запрашиваем пределы интегрирования и число разбиений:

BEGIN

Writeln (‘Введите пределы интегрирования a и b ‘);

Readln (a, b);

Writeln (‘Введите число разбиений n ‘);

Readln (n);

Далее производим вычисления по формуле (5):

h: =(b-a)/n;

Для расчета суммы требуется обнулить переменные, которые заданы для вычисления суммы в разделе переменных, и организовать цикл, который будет обеспечивать суммирование:

l: =0;

s: =0;

p: =0;

For i: =0 to n Do begin

l: =l+f(a+(i-1)*h);

lpr: =h*l;

s: =s+f((a+h)/2+(i-1)*h);

srpr: =h*s;

p: =p+f(a+h+(i-1)*h);

ppr: =h*p;

end;

После реализации цикла все расчеты по формуле (5) произведены.

Далее следует вычислить погрешности или остаточные члены по формулам (11) и (12):

lpg: =f2(8/10)*h*(b-a)/2;

ppg: =lpg;

spg: =f2(8/10)*Sqr(h)*(b-a)/24;

x1: =lpr+lpg;

x2: =srpr+spg:

x3: =ppr+ppg;

Вывод результатов на экран:

WriteLn(‘Левые ‘, ’ Средние ’, ’Правые’);

WriteLn(lpr: 4: 5, ’ ‘, srpr: 4: 5, ’ ‘, ppr: 4: 5);

WriteLn(‘Остаточные члены’);

WriteLn(lpg: 4: 5, ’ ‘, spg: 4: 5, ’ ‘, ppg: 4: 5);

WriteLn(‘Результат’);

WriteLn(x1: 4: 5, ’ ‘, x2: 4: 5, ’ ‘, x3: 4: 5);

ReadLn;

Конец программы фиксируется служебным словом END, после которого обязательно ставится точка:

END.







© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.