Интерполирование алгебраическими многочленами

Интерполирование как один из способов приближения функций. Интерполяционная формула Лагранжа. Формула Ньютона. Пример нахождения приближенного значения по интерполяционной формуле Лагранжа, Ньютона для значения заданного аргумента. Код программы Паскаль.

Рубрика Математика
Вид контрольная работа
Язык русский
Дата добавления 21.10.2017
Размер файла 322,7 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

[Введите текст]

МИНОБРНАУКИ РОССИИ

Федеральное государственное бюджетное образовательное учреждение

высшего профессионального образования

«Челябинский государственный университет»

(ФГБОУ ВПО «ЧелГУ»)

Математический факультет

Кафедра Вычислительной математики

Контрольная работа по теме:

«Интерполирование алгебраическими многочленами»

Челябинск

2014

ОГЛАВЛЕНИЕ

ВВЕДЕНИЕ

1. ЗАДАЧА ИНТЕРПОЛИРОВАНИЯ АЛГЕБРАИЧЕСКИМИ МНОГОЧЛЕНАМИ

2. ИНТЕРПОЛЯЦИОННАЯ ФОРМУЛА ЛАГРАНЖА

3. ИНТЕРПОЛЯЦИОННАЯ ФОРМУЛА НЬЮТОНА

4. ПРИМЕНЕНИЕ ИНТЕРПОЛЯЦИОННЫХ ФОРМУЛ К ДАННОМУ ПРИМЕРУ

ЗАКЛЮЧЕНИЕ

ИСПОЛЬЗОВАННАЯ ЛИТЕРАТУРА

ПРИЛОЖЕНИЕ

ВВЕДЕНИЕ

Интерполированием является одним из способов приближения функций и применяется в тех случаях, когда функция задается таблицей своих значений в некоторых точках.

Задачей интерполирования состоит в том, чтобы по значениям функции f(x) в нескольких точках отрезка восстановить ее значения в остальных точках данного отрезка. Разумеется, такая постановка задачи допускает сколь угодно много решений.

Задача интерполирования возникает, например, в том случае, когда известны результаты измерений yk = f(xk) некоторой физической величины f(x) в точках xk, k = 0, 1,…, n и требуется определить ее значение в других точках. Интерполирование используется также при необходимости сгущения таблиц, когда вычисление значений f(x) по точным формулам трудоемко.

1. ЗАДАЧА ИНТЕРПОЛИРОВАНИЯ АЛГЕБРАИЧЕСКИМИ МНОГОЧЛЕНАМИ

Пусть функциональная зависимость задана таблицей y0 = f(x0);…, y1= f(x1);…,yn = f(xn). Обычно задача интерполирования формулируется так: найти многочлен P(x) = Pn(x) степени не выше n, значения которого в точках xi (i = 0, 1 2,…, n)совпадают со значениями данной функции, то есть P(xi) = yi.

Геометрически это означает, что нужно найти алгебраическую кривую вида

проходящую через заданную систему точек Мi(xi,yi) (рис. 1). Многочлен Р(х) называется интерполяционным многочленом. Точки xi (i = 0, 1, 2,…, n) называются узлами интерполяции 

Рис. 1 - Интерполирование алгебраическим многочленом

Для любой непрерывной функции f(x) сформулированная задача имеет единственное решение. Действительно, для отыскания коэффициентов а0, а1, а2 ,…, аn получаем систему линейных уравнений

(1)

определитель которой (определитель Вандермонда) отличен от нуля, если среди точек xi (i = 0, 1, 2,…, n) нет совпадающих.

Решение системы (1) можно записать различным образом. Однако наиболее употребительна запись интерполяционного многочлена в форме Лагранжа и в форме Ньютона.

2. ИНТЕРПОЛЯЦИОННАЯ ФОРМУЛА ЛАГРАНЖА

Пусть и заданы точки , (узлы интерполирования), в которых известны значения функции . Задача интерполирования состоит в том, чтобы построить многочлен:

степени n, значения которого в заданных точках , совпадают со значениями функции в этих точках. Такой полином существует и единственен.

Интерполяционный многочлен степени не выше n по системе алгебраических многочленов 1, х, хІ,…,x? можно задать по формуле Лагранжа:

,где ,

.

Обозначая

получим “барицентрический” вид многочлена Лагранжа:

3. ИНТЕРПОЛЯЦИОННАЯ ФОРМУЛА НЬЮТОНА

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

где , i,j=0,1,…,n,

i ? j - разделенные разности первого порядка,

, i,j,k=0,1,…,n,

I ? j ? k - разделенные разности второго порядка,

-

разделенные разности k-го порядка.

При выводе формулы Ньютона не накладывается ограничений на порядок узлов x0,x1,…,xn , поэтому множество интерполяционных формул можно получить из перенумерацией узлов. Также есть первая интерполяционная формула Ньютона (для интерполирования в начале таблицы, т.е. точка x близка к x0), по которой будет считаться данная формула:

Pn(x) = f0 + tД f0 + Д2f0 + … + Дn f0,

где t =

n

fn

Дfn

Д2fn

Д3fn

Д4fn

0

f0

Дf0

Д2f0

Д3f0

Д4f0

1

f1

Дf1

Д2f1

Д3f1

2

f2

Дf2

Д2f2

3

f3

Дf3

4

f4

4. ПРИМЕНЕНИЕ ИНТЕРПОЛЯЦИОННЫХ ФОРМУЛ К ДАННОМУ ПРИМЕРУ

Дана таблица значений функции y = Sh(x):

x

Sh(x)

1,0

1,1

1,2

1,3

1,4

1,17520

1,33565

1,50946

1,69838

1,90430

Нужно найти приближенное значение Sh(x) по интерполяционной формуле Лагранжа и Ньютона для значения аргумента 0,03.

Исходя из данной формулы Лагранжа найдем значение.

, в нашем случае L5(1,03).

Найдем:

, щ(1,03) = (1,03-1)*(1,03-2)*(1,03-3)*(1,03-4) = 0,0000356643,

(щ'(x0) = (1-1,1)*(1-1,2)*(1-1,3)*(1-1,4) = 0,0024

(щ'(x1) = (1,1-1)*(1,1-1,2)*(1,1-1,3)*(1,1-1,4) = -0,0006

(щ'(x2) = (1,2-1)*(1,2-1,1)*(1,2-1,3)*(1,2-1,4) = 0,0004

(щ'(x3) = (1,3-1)*(1,3-1,1)*(1,3-1,2)*(1,3-1,4) = -0,0006

(щ'(x4) = (1,4-1)*(1,4-1,1)*(1,4-1,2)*(1,4-1,3) = 0,0024

x - x0 = 0,03

x - x1 = - 0,07

x - x2 = - 0,17

x - x3 = - 0,27

x - x4 = - 0,37

После того, как нашли щ(x) и щ' (xk), найдем L5(1,03).

L5(1,03) = + + + + = 0,58212063 + 1,1341671975 - 0,7916740335 + 0,373898357 - 0,07648144875 = 1,22203070225

Найдем значение в точке 1,03 по интерполяционной формуле Ньютона.

Дf0 = f1 - f0 = 0,16045

Дf1 = f2 - f1 = 0,17381

Дf2 = f3 - f2 = 0,18893

Дf3 = f4 - f3 = 0,20592

Аналогично находим остальные значения Дf и подставим их в таблицу.

n

fn

Дfn

Д2fn

Д3fn

Д4fn

0

1,1752

0,16045

0,01336

0,00175

0,00014

1

1,33565

0,17381

0,01511

0,00189

2

1,50946

0,18892

0,017

3

1,69838

0,20592

4

1,9043

t = = 0,3

P5(1,03) = 1,1752 + 0,3*0,16045 + *0,01336 + *0,00175 + *0,00014 = 1,1752 + 0,048135 - 0,0014028 + 0,000104125 - 0,00000562275 = 1,22203070225.

Теперь посчитаем значение в точке 1,03 по формуле гиперболического синуса:

Sh(x) = => Sh(1,03) = = 1,22202943707.

ЗАКЛЮЧЕНИЕ

В данной курсовой работе были рассмотрены интерполирования алгебраическими многочленами методами Лагранжа и Ньютона, пути решения которых совершенно разные, но результаты работы были одинаковыми, и также был рассчитан гиперболический синус по данной точке, результат которой меньше, но весьма близок к результатам методов.

Мною было рассчитано значение в точке по интерполяционным формулам Лагранжа и Ньютона и была создана демонстративная программа на Delphi 7, которая наглядно показывает достоверность решения методов.

ИСПОЛЬЗОВАННАЯ ЛИТЕРАТУРА

1) Монастырский П.И. Сборник задач по методам вычислений 1-е издание.

2) Монастырский П.И. Сборник задач по методам вычислений 2-е издание.

3) Тынкевич М. А.. Глава 7.6.1. Интерполяционный многочлен Лагранжа. Численные методы анализа.

ПРИЛОЖЕНИЕ

Используя все выше перечисленные интерполяционные формулы Лагранжа и Ньютона, внесем их в программу Delphi 7 через язык программирования Паскаль.

Результат по интерполяционной формуле Лагранжа:

аргумент функция лагранж ньютон

Результат по интерполяционной формуле Ньютона:

Вывод: все значения в программе Delphi 7 совпадают со значениями из пункта 5.

Код программы Паскаль по интерполяционной формуле Ньютона:

unit Unit1;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, Grids, StdCtrls, XPMan, unit2, Buttons, TeEngine, Series,

ExtCtrls, TeeProcs, Chart;

type

TForm1 = class(TForm)

Label1: TLabel;

Edit1: TEdit;

Button1: TButton;

StringGrid1: TStringGrid;

XPManifest1: TXPManifest;

Button2: TButton;

Memo1: TMemo;

Chart1: TChart;

Series1: TLineSeries;

BitBtn1: TBitBtn;

Label2: TLabel;

RadioGroup1: TRadioGroup;

Label3: TLabel;

Edit2: TEdit;

Button3: TButton;

Edit3: TEdit;

Memo2: TMemo;

LabeledEdit1: TLabeledEdit;

Label4: TLabel;

Edit4: TEdit;

Edit5: TEdit;

procedure FormCreate(Sender: TObject);

procedure Button1Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure Button3Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

Meth:Methods;

flag:bool;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);

begin

Meth:=Methods.Create;

RadioGroup1.ItemIndex:=0;

StringGrid1.Cells[0,0]:='№ узла';

StringGrid1.Cells[0,1]:='x[i]';

StringGrid1.Cells[0,2]:='y[i]';

StringGrid1.Cells[1,0]:=IntToStr(1);

end;

procedure TForm1.Button1Click(Sender: TObject);

var

i:integer;

begin

Meth.N:=StrToInt(Edit1.Text);

StringGrid1.ColCount:=Meth.N+1;

for i:=1 to Meth.N do

begin

StringGrid1.Cells[i,0]:=IntToStr(i);

end;

end;

procedure TForm1.Button2Click(Sender: TObject);

var

i: integer;

begin

Memo1.Clear;

Memo2.Clear;

Series1.Clear;

Meth.Step:=StrToFloat(LabeledEdit1.Text);

for i:=1 to Meth.N do

begin

Meth.x[i]:=StrToFloat(StringGrid1.Cells[i,1]);

Meth.y[i]:=StrToFloat(StringGrid1.Cells[i,2]);

end;

for i:=0 to Meth.N-1 do

begin

Meth.x1[i]:=StrToFloat(StringGrid1.Cells[i+1,1]);

Meth.y1[i]:=StrToFloat(StringGrid1.Cells[i+1,2]);

end;

if RadioGroup1.ItemIndex = 0 then

Meth.Graf;

if RadioGroup1.ItemIndex = 1 then

Meth.Newton;

end;

procedure TForm1.Button3Click(Sender: TObject);

begin

if RadioGroup1.ItemIndex = 0 then

Edit3.Text:=FloatToStr(Meth.PointLag(StrToFloat(Edit2.Text)))

else

Edit3.Text:=FloatToStr(Meth.PointNew(StrToFloat(Edit2.Text)));

end;

end.

Код программы Паскаль по интерполяционной формуле Лагранжа:

unit Unit2;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, Grids, StdCtrls,Math;

type

Tvector = array [1..10] of real;

Tvector1 = array [0..9] of real;

TMatr = array [1..10] of array[1..10] of real;

Methods = class

N:integer;

x,y,a:Tvector;

y1,x1:Tvector1;

mas:TMatr;

Step:real;

Polinom: string;

// function Lagrange(q:real):real;

procedure Graf;

function PointLag(point:real):real;

procedure Razn();

function RealD(xk:real;x0:real):real;

function Factorial(Number:integer): integer;

procedure Newton();

function PointNew(point:real):real;

end;

implementation

uses Unit1;

{function Methods.Lagrange(q:real):real;

var

i,j:integer;

L,s:real;

begin

L:=0;

for i:=1 to n do

begin

s:=1;

for j:=1 to N do

if j<>i then

s:=s*(q-x[j])/(x[i]-x[j]);

L:=L+y[i]*s;

end;

Form1.Memo1.Lines.Add('x= '+FloatToStr(q)+' y= '+FloatToStr(L));

//Form1.Series1.AddXY(q,l);

Lagrange:=l

end; }

procedure Methods.Graf();

Var

MassivA: array [1..10]of array [1..10]of real;

MassivB: array[1..10] of real;

MassivX: array[1..10] of real;

i,j,k:byte;

h, step, count:real;

Mx,My:real;

begin

for i:=1 to N do

begin

MassivB[i]:=y[i];

for j:=1 to N do

MassivA[j,i]:=Power(x[j],i-1);

end;

{Прямой ход - исключение переменных}

for k:=1 to n-1 do

for i:=k+1 to n do

begin

MassivA[i,k]:=-MassivA[i,k]/MassivA[k,k];

for j:=k+1 to n do

begin

MassivA[i,j]:=MassivA[i,j]+MassivA[i,k]*MassivA[k,j];

end;

MassivB[i]:=MassivB[i]+MassivA[i,k]*MassivB[k];

end;

MassivX[n]:=MassivB[n]/MassivA[n,n];

{Обратный ход - нахождение корней}

for k:=n-1 downto 1 do

begin

h:=MassivB[k];

for j:=k+1 to n do

h:=h-MassivX[j]*MassivA[k,j];

MassivX[k]:=h/MassivA[k,k];

end;

for i:=1 to n do

a[i]:=MassivX[i];

Polinom:='';

// построение многочлена

for i:=0 to N-1 do

begin

if ((i=N-1) or (i=0)) then

begin

if (i=N-1) then

begin

if(a[N-i]<0) then

Polinom:=Polinom+FloatToStr(a[N-i])

else

Polinom:=Polinom+ '+'+FloatToStr(a[N-i]);

end

else

Polinom:=Polinom+FloatToStr(a[N-i])+'x^'+IntToStr(N-i-1);

end

else

begin

if(a[N-i]<0) then

Polinom:=Polinom+FloatToStr(a[N-i])+'x^'+IntToStr(N-i-1)

else

Polinom:=Polinom + '+'+FloatToStr(a[N-i])+'x^'+IntToStr(N-i-1);

end;

end;

Form1.Memo2.Lines.Add(Polinom);

// построение графика

step:=x[1];

while step<=x[N] do

begin

Mx:=step;

My:=0;

for i:=1 to N do

begin

My:=My+a[i]*Power(Mx,i-1);

end;

Form1.Series1.AddXY(Mx,My);

step:=step + 0.001;

end;

//уплотнение таблицы

step:=x[1];

count:= StrToFloat(Form1.LabeledEdit1.Text);

while step<=x[N] do

begin

Mx:=step;

My:=0;

for i:=1 to N do

begin

My:=My+a[i]*Power(Mx,i-1);

end;

Form1.Memo1.Lines.Add('x= '+Format('%.3f',[Mx])+' y= '+Format('%.4f',[My]));

step:=step + count;

end;

end;

function Methods.PointLag(point:real):real;

var

i:byte;

begin

for i:=1 to N do

result:=result+a[i]*Power(point,i-1);

end;

// конечнее разности

procedure Methods.Razn();

var

i, j: byte;

begin

for j:=1 to N-1 do

mas[j,1]:= y[j+1]-y[j];

for i:=2 to N do

for j:=1 to N-i+1 do

mas[j,i]:= mas[j+1,i-1]-mas[j,i-1];

end;

// вывод D

function Methods.RealD(xk:real;x0:real):real;

begin

result:=(xk-x0)/(x[2]-x[1]);

end;

function Methods.Factorial(Number:integer):integer;

var

i:integer;

begin

result:=1;

for i:=1 to Number do

Result:= Result*Number;

end;

procedure Methods.Newton();

var

i,j:integer;

New, Ndop, d:real;

xn, xk, point:real;

begin

xn:= x[1];

xk:= StrToFloat(Form1.Edit5.Text);

point:= StrToFloat(Form1.Edit4.Text);

// d:= RealD(xk,xn);

Razn;

while (point<=xk) do

begin

New:=y[1];

for i:=1 to N-1 do

begin

d:= RealD(point,xn);

Ndop:=d*mas[1,i]/Factorial(i);

if (i>1) then

begin

for j:=1 to i-1 do

Ndop:=Ndop*(d-j);

end;

New:=New+Ndop;

end;

Form1.Series1.AddXY(point,New);

Form1.Memo1.Lines.Add('x= '+Format('%.3f',[point])+' y= '+Format('%.4f',[New]));

point:=point+Step;

end;

Form1.Memo2.Lines.Add(Polinom);

end;

function Methods.PointNew(point:real):real;

var

New, Ndop, d:real;

i, j: byte;

begin

New:=y[1];

for i:=1 to N-1 do

begin

d:= RealD(point,x[1]);

Ndop:=d*mas[1,i]/Factorial(i);

if (i>1) then

begin

for j:=1 to i-1 do

Ndop:=Ndop*(d-j);

end;

result:=New+Ndop;

end;

end;

end.

Размещено на Allbest.ru

...

Подобные документы

  • В вычислительной математике существенную роль играет интерполяция функций. Формула Лагранжа. Интерполирование по схеме Эйткена. Интерполяционные формулы Ньютона для равноотстоящих узлов. Формула Ньютона с разделенными разностями. Интерполяция сплайнами.

    контрольная работа [131,6 K], добавлен 05.01.2011

  • Применение первой и второй интерполяционной формул Ньютона. Нахождение значений функции в точках, не являющимися табличными. Bспользование формулы Ньютона для не равностоящих точек. Нахождение значения функции с помощью интерполяционной схемы Эйткена.

    лабораторная работа [481,0 K], добавлен 14.10.2013

  • Метод решения задачи, при котором коэффициенты a[i], определяются непосредственным решением системы - метод неопределенных коэффициентов. Интерполяционная формула Ньютона и ее варианты. Построение интерполяционного многочлена Лагранжа по заданной функции.

    лабораторная работа [147,4 K], добавлен 16.11.2015

  • Способы определения точного значения интеграла по формуле Ньютона-Лейбница и приближенного значения интеграла по формуле трапеций. Порядок нахождения координаты центра тяжести однородной плоской фигуры ограниченной кривой, особенности интегрирования.

    контрольная работа [459,6 K], добавлен 16.04.2010

  • Интерполяционная схема Эйткина. Связь конечных разностей и производных. Распространение ошибки исходных данных при вычислении конечные разности. Свойства разделенной разности. Интерполяционная формула Ньютона для не равноотстоящих узлов. Полином Лагранжа.

    лекция [92,3 K], добавлен 06.03.2009

  • Способы построения интерполяционных многочленов Лагранжа, основные этапы. Интерполирование функций многочленами Ньютона, способы построения графика. Постановка задачи аппроксимации функции одной переменной, предпосылки повышения точности расчетов.

    презентация [204,5 K], добавлен 18.04.2013

  • Кінцеві різниці різних порядків. Залежність між кінцевими різницями і функціями. Дискретний і неперервний аналіз. Поняття про розділені різниці. Інтерполяційна формула Ньютона. Порівняння формул Лагранжа і Ньютона. Інтерполяція для рівновіддалених вузлів.

    контрольная работа [75,6 K], добавлен 06.02.2014

  • Определение абсолютной и относительной погрешностей приближенных чисел. Оценка погрешностей результата. Интерполирование и экстраполирование данных, интерполяционный многочлен Лагранжа и Ньютона, их основные характеристики и сравнительное описание.

    лабораторная работа [74,8 K], добавлен 06.08.2013

  • Методы оценки погрешности интерполирования. Интерполирование алгебраическими многочленами. Построение алгебраических многочленов наилучшего среднеквадратичного приближения. Численные методы решения задачи Коши для обыкновенных дифференциальных уравнений.

    лабораторная работа [265,6 K], добавлен 14.08.2010

  • Разделенные разности и аппроксимация функций методом наименьших квадратов. Интерполяционные многочлены Лагранжа и Ньютона. Экспериментальные данные функциональной зависимости. Система уравнений для полинома. Графики аппроксимирующих многочленов.

    реферат [139,0 K], добавлен 26.07.2009

  • Постановка задачи вычисления значения определённых интегралов от заданных функций. Классификация методов численного интегрирования и изучение некоторых из них: методы Ньютона-Котеса (формула трапеций, формула Симпсона), квадратурные формулы Гаусса.

    реферат [99,0 K], добавлен 05.09.2010

  • Вычисление производной по ее определению, с помощью конечных разностей и на основе первой интерполяционной формулы Ньютона. Интерполяционные многочлены Лагранжа и их применение в численном дифференцировании. Метод Рунге-Кутта (четвертого порядка).

    реферат [71,6 K], добавлен 06.03.2011

  • Непрерывная и точечная аппроксимация. Интерполяционные полиномы Лагранжа и Ньютона. Погрешность глобальной интерполяции, квадратичная зависимость. Метод наименьших квадратов. Подбор эмпирических формул. Кусочно-постоянная и кусочно-линейная интерполяции.

    курсовая работа [434,5 K], добавлен 14.03.2014

  • Иоганн Карл Фридрих Гаусс - величайший математик всех времен. Интерполяционные формулы Гаусса, дающие приближенное выражение функции y=f(x) при помощи интерполяции. Области применение формул Гаусса. Основные недостатки интерполяционных формул Ньютона.

    контрольная работа [207,3 K], добавлен 06.12.2014

  • Построение массива конечных разностей. Выполнение экстраполяции. Вычисление приближенной функции с помощью многочлена Лагранжа. Определение значения функции с помощью формул Ньютона. Квадратичная сплайн-интерполяция. Среднеквадратичная аппроксимация.

    контрольная работа [1004,9 K], добавлен 01.12.2009

  • Интерполирование функции в точке, лежащей в окрестности середины интервала. Интерполяционные формулы Гаусса. Формула Стирлинга как среднее арифметическое интерполяционных формул Гаусса. Кубические сплайн-функции как математическая модель тонкого стержня.

    презентация [88,1 K], добавлен 18.04.2013

  • Построение графика непрерывной функции. Определение множителя Лагранжа. Критические точки - значения аргумента из области определения функции, при которых производная функции обращается в нуль. Наибольшее и наименьшее значения функции на отрезке.

    контрольная работа [295,5 K], добавлен 24.03.2009

  • Загальні формули прямокутників. Похибка методу прямокутників. Площа криволінійної трапеції. Формула парабол (Сімпсона). Інтерполяційний багаточлен Лагранжа. Формула трьох восьмих. Абсолютна похибка обчислення. Наближення підінтегральної функції.

    лабораторная работа [298,1 K], добавлен 26.03.2011

  • Методы хорд и итераций, правило Ньютона. Интерполяционные формулы Лагранжа, Ньютона и Эрмита. Точечное квадратичное аппроксимирование функции. Численное дифференцирование и интегрирование. Численное решение обыкновенных дифференциальных уравнений.

    курс лекций [871,5 K], добавлен 11.02.2012

  • Осуществление интерполяции с помощью полинома Ньютона. Уточнение значения корня на заданном интервале тремя итерациями и нахождение погрешности вычисления. Применение методов Ньютона, Сампсона и Эйлера при решении задач. Вычисление производной функции.

    контрольная работа [155,2 K], добавлен 02.06.2011

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.