Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ.doc
Скачиваний:
1
Добавлен:
01.04.2025
Размер:
896 Кб
Скачать
☆

Программа:

Program MetHord; {Метод хорд}

Const

Eps=0.00001;

h=0.1;

Function F(xf:Real):Real;

Begin

F:=Sqr(xf-1)*(xf-1)+2*ln(abs(xf-2))-0.2;

End;

{Function F(x)}

Procedure MH(a,b:Real; Var Xn,dX1:Real);

Var

y,Xn1:Real;

Begin

Xn:=b;

y:=F(Xn);

Repeat

Xn1:=a-(F(a)/(F(Xn)-F(a)))*(Xn-a);

y:=F(Xn1);

dX1:=Abs(Xn-Xn1);

Xn:=Xn1

Until dX1<=Eps;

End;

{Procedure Mh(A1,B1,X1,dX1)}

Var

alfa,beta,X,dX,

x1,x2,y1,y2:Real;

Begin {Отделение корней}

Write('Введите промежуток : '); ReadLn(Alfa,Beta);

x1:=alfa;

x2:=x1+h;

y1:=F(x1);

While x2<=beta do

Begin

y2:=F(x2);

If y1*y2<=0

Then

Begin

WriteLn('Корень определен на промежутке ( ',x1:0:2,' ; ',x2:0:2,' )');

MH(x1,x2,X,dX);

WriteLn('X = ',X:10:8,' +- ',dX:10:8);

End;

If y1*y2=0

Then

Begin

x2:=x2+h;

y2:=F(x2);

End;

x1:=x2;

x2:=x1+h;

y1:=y2;

End;

If X=0

Then

WriteLn('На этом промежутке корней НЕ СУЩЕСТВУЕТ.');

ReadLn

End.

Результат работы программы:

Введите промежуток : -0.5 0.2

Корень определен на промежутке ( -0.10 ; 0.00 )

X = -0.08197433 +- 0.00000123

Введите промежуток : 0.5 1

Корень определен на промежутке ( 0.80 ; 0.90 )

X = 0.89417410 +- 0.00000187

Введите промежуток : 2.1 2.5

Корень определен на промежутке ( 2.30 ; 2.40 )

X = 2.33570529 +- 0.00000027

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

Постановка задачи:

1)Найти корень нелинейного уравнения F(x) ≡ x3 +1 методом хорд.

Решение: Результат работы программы:

Введите промежуток : -1.5 -0.5

Корень определен на промежутке ( -1.10 ; -1.00 )

X = -1.00000000 +- 0.00000000

Проверка:

x

y

-3,000

-26,000

-2,750

-19,797

-2,500

-14,625

-2,250

-10,391

-2,000

-7,000

-1,750

-4,359

-1,500

-2,375

-1,250

-0,953

-1,000

0,000

-0,750

0,578

-0,500

0,875

-0,250

0,984

0,000

1,000

0,250

1,016

0,500

1,125

0,750

1,422

1,000

2,000

1,250

2,953

1,500

4,375

1,750

6,359

2,000

9,000

2,250

12,391

2,500

16,625

2,750

21,797

3,000

28,000

3,250

35,328

3,500

43,875

2) Найти корень нелинейного уравнения F(x)=x2-1 методом хорд.

Решение:

Результат работы программы:

Введите промежуток : -1.5 -0.5

Корень определен на промежутке ( -1.10 ; -1.00 )

X = -1.00000000 +- 0.00000000

Введите промежуток : 0.5 1.5

Корень определен на промежутке ( 1.00 ; 1.10 )

X = 1.00000000 +- 0.00000000

Проверка

x

y

-3,000

8,000

-2,750

6,563

-2,500

5,250

-2,250

4,063

-2,000

3,000

-1,750

2,063

-1,500

1,250

-1,250

0,563

-1,000

0,000

-0,750

-0,438

-0,500

-0,750

-0,250

-0,938

0,000

-1,000

0,250

-0,938

0,500

-0,750

0,750

-0,438

1,000

0,000

1,250

0,563

1,500

1,250

1,750

2,063

2,000

3,000

2,250

4,063

2,500

5,250

2,750

6,563

3,000

8,000

3,250

9,563

3,500

11,250




3) Найти корень нелинейного уравнения ln(x)=0 методом хорд.

Решение:

Результат работы программы:

Введите промежуток : 0.5 1.5

Корень определен на промежутке ( 1.00 ; 1.10 )

X = 1.00000000 +- 0.00000000

Проверка:

x

y

-3,000

-22,000

-2,750

-16,297

-2,500

-11,625

-2,250

-7,891

-2,000

-5,000

-1,750

-2,859

-1,500

-1,375

-1,250

-0,453

-1,000

0,000

-0,750

0,078

-0,500

-0,125

-0,250

-0,516

0,000

-1,000

0,250

-1,484

0,500

-1,875

0,750

-2,078

1,000

-2,000

1,250

-1,547

1,500

-0,625

1,750

0,859

2,000

3,000

2,250

5,891

2,500

9,625

2,750

14,297

3,000

20,000

3,250

26,828

3,500

34,875



Вторая тема курсовой работы:

Метод касательных.

Постановка задачи:

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

Цель работы:

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

Краткая теория:

Дано нелинейное уравнение F(x) = 0, где функция у = F(x) определена и непрерывно-дифференцируема для всех , причем функция меняет знак на концах этого отрезка т.е. F(a) · F(b) < 0.

Найти приближенное решение данного уравнения F(x)=0 с точностью ε=10-4, а так же необходимое для этого число разбиений отрезка .

Приближенное решение ξ; и погрешность приближения Δξ ; находятся по следующей схеме:

если F(b) F"(x) > 0 на [a,b],то, ;

если F(a) F"(x) > 0 на [a,b],то, .

, ;

Приближенное решение ξ, и погрешность приближения Δξ:

,

Блок-схемы:

Отделение корней Метод касательных