Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОТЧЕТ ПО ЧИСЛОВЫМ МЕТОДА.doc
Скачиваний:
3
Добавлен:
20.04.2019
Размер:
1.09 Mб
Скачать

Министерство образования и науки РФ

Кузнецкий институт информационных и управленческих технологий

Филиал ПГУ

Кафедра ЕН и ТД

ОТЧЕТ ПО ЛАБОРАТОРНЫМ РАБОТАМ

По дисциплине

«Численные методы»

Выполнили: студенты гр. 10кр1

Швецов А.Н.

Костюньков С.А.

Принял: ст.преподователь

Кафедры ЕН и ТД

Астахова Ю.Н.

2011

Лабораторная работа № 1

Методы решения нелинейных уравнений.

Цель работы: изучение методов решения нелинейных и трансцендентных уравнений.

Метод хорд.

Для нахождения очередного приближения корня, находящегося в интервале [a,b], этот интервал делят в отношении |f(a)|:|f(b)|. Тогда приближенное значение корня определяется по формуле:

.

Выбирается тот из интервалов [a,x] или [х,b], в котором функция меняет свой знак, и процесс уточнения корня повторяется.

Вычисления корня нужно прекратить в том случае, когда выполняется неравенство

,

где , .

Порядок выполнения работы

1. Изучить метод решения нелинейных уравнений, соответствующий Вашему варианту.

2. Разработать программу для решения данного нелинейного уравнения.

3. Решить нелинейное уравнение с точностью  = 0,0001.

Варианты заданий 1) 2 cos x -7x = 0 методом хорд,

Листинг программы

program horda;

uses crt;

var xn,xk,x,prib: real;

fx,mm,e,tz,h,fpr,min,max,zz: real;

Label Met1;

Function Fun(fx:real):real;

Begin

Fun:=2*cos(fx)-7*fx;

end;

Function Pr1(x:real):real;

Begin

Pr1:=-2*sin(x)-7;

end;

Begin

clrscr;

e:=0.0001;

Writeln ('^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^');

Writeln ('Определение корней нелинейного уравнения метод хорд');

Writeln ('^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^');

Writeln;

Met1: Writeln ('Введите начальное значение диапазона:');

Readln (xn);

Writeln ('Введите конечное значнеие диапазона:');

Readln (xk);

if xk<xn then begin

writeln ('Не правильный диапазон. Повторите попытку'); Goto Met1;

end;

{Определение min и Max}

h:=(xk-xn)/10000;

max:=abs(Pr1(xn));

min:=abs(Pr1(xn));

tz:=xn;

while tz<=xk do begin

fpr:=abs(Pr1(tz));

if max<fpr then max:=fpr;

if min>fpr then min:=fpr;

tz:=tz+h;

end;

writeln ('Максимальное значение первой производной = ',max:5:4);

writeln ('Минимальное значение первой производной = ',min:5:4);

if Fun(xk)*Fun(xn)<0 then

begin

Prib:=abs(Fun(xk)-Fun(xn));

writeln;

writeln ( ' x | Приближение "e"');

writeln ('___________________________');

while abs(prib)>=e do begin

zz:=x;

x:=xn-(fun(xn)/(fun(xk)-fun(xn)))*(xk-xn);

prib:=((max-min)/min)*abs(x-xn);

if fun(xn)*fun(x)<0 then xk:=x;

if fun(x)*fun(xk)<0 then xn:=x;

writeln ( zz:5:4, ' | ', prib:5:5);

end;

Writeln;

Writeln ('** Проверка **');

Writeln ('Значение заданной функции при приближении <=0.0001 при х= ',zz:5:4,' равно ',fun(x):4:3);

end

else Writeln ('Корней в выбранном диапазоне нет');

end.

Тестирование пограммы

Лабораторная работа №2

Методы решения систем линейных уравнений

Цель работы: изучение прямых и итерационных методов решения систем линейных уравнений.

Метод простых итераций.

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

.

Вычисления производят до тех пор, пока , где (j)– номер итерации,  – заданная погрешность вычислений.