ВУЗ:
Составители:
Пример 3. Построение интерполяционного полинома Нью-
тона. Все условия задачи такие же, как и в примере 2, изме-
няется лишь процедура вычисления полиномов: вме-
сто (). Приведем текст процедур вычисления значений
полинома Ньютона ():
( )
n
Px
n
Lx
n
Px
procedure CalcArguments(xLeft, xRight :real; n : integer;
var x : array of real);
// xLeft, xRight : левый и правый концы интервала
// n - число точек сетки
// x - заполняемый массив аргументов x[0..n-1]
var
i : integer;
step : real;
begin
step := (xRight-xLeft)/(n-1);
for i := 0 to n-1 do
x[i]:=xLeft+i*step;
end;
procedure CalcDifCoefs(x : array of real; n : integer;
f : OneArgFunction; var DifCoefs : array of real);
// n - число коэффициентов полинома в форме Ньютона
// x[0..n-1] - массив аргументов
// DifCoefs[0..n-1] - заполняемый массив коэффициентов по-
линома - величины конечных разностей
// аппроксимируемая функция f : OneArgFunction;
// тип определен как OneArgFunction = function (x:real) : real;
var s, sum : real;
i, j, k : integer;
begin
DifCoefs[0] := f(x[0]);
for k:= 1 to n-1 do
begin
sum:=0;
22
Страницы
- « первая
- ‹ предыдущая
- …
- 20
- 21
- 22
- 23
- 24
- …
- следующая ›
- последняя »