Студопедия

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

КАТЕГОРИИ:

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






Тестовый пример






writeln('Нажмите Enter');

readln;

newt(N, d1, X, Y, koef_polinoma);

zapisb(koef_polinoma, x, y, n, fail);

vblvod(fail, fail1);

writeln('Нажмите Enter для просмотра графика функции, затем еще раз для выхода из программы');

readln;

grafik(N, X, Y, koef_polinoma);

END.

readln(d1);

writeln('Нажмите Enter');

readln;

newt(N, d1, X, Y, koef_polinoma);

zapisb(koef_polinoma, x, y, n, fail);

vblvod(fail, fail1);

writeln('Нажмите Enter для просмотра графика функции, затем еще раз для выхода из программы');

readln;

grafik(N, X, Y, koef_polinoma);

END.

Дана табличная функция:

Вычислить разделенные разности 1-го, 2-го, 3-го порядков (n=3) и занести их в диагональную таблицу.

Разделенные разности первого порядка:

Разделенные разности второго порядка:

Разделенная разность третьего порядка:

Интерполяционный многочлен Ньютона для заданной табличной функции имеет вид:

График интерполяционного многочлена будет таким:

procedure zapisb(koef: mas; uzel, fun: mas; kolvo: integer; var f: text);

{В данной процедуре осуществляется запись в файл данных и результата}

var i: integer;

begin

assign(f, 'interpol.txt');

rewrite(f);

for i: =0 to kolvo do writeln(f, 'x= ', uzel[i]: 8: 4, ' f(x)=', fun[i]: 8: 4);

writeln(f, 'Интерполяционный полином');

write(f, 'p(x)=', koef[0]: 8: 4);

for i: =1 to kolvo do if i> 1 then write (f, '+(', koef[i]: 8: 4, ')*x^', i)

else write (f, '+(', koef[i]: 8: 4, ')*x');

close(f);

end;

procedure vblvod(var f1, f2: text);

{Вывод содержимого записанного файла на экран}

var s1: string;

begin

clrscr;

assign(f1, 'interpol.txt');

reset(f1);

assigncrt(f2);

rewrite(f2);

while not eof(f1) do

begin

Readln(f1, s1);

writeln(f2, s1);

end;

close(f2);

close(f1);

end;

procedure grafik(kolvo: integer; uzlbl, funktsiya: mas; c: mas);

{Построение графика полученной функции}

var driver, mode, Err, a1, b1, z, i, j: integer; s: string; xt, yt: real;

begin

driver: =detect;

InitGraph(driver, mode, 'd: \tp7\bp\bgi');

err: =graphresult;

if err< > grok then writeln('Ошибка при инициализации графического режима')

else

begin

Setcolor(9);

line(320, 0, 320, 480);

line(0, 240, 640, 240);

settextstyle(smallfont, horizdir, 3);

setcolor(10);

outtextxy(320, 245, '0');

a1: =0;

b1: =480;

z: =-10;

for i: =0 to 20 do

begin

if z< > 0 then

 


Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2024 год. (0.007 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал