Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Числові методи.doc
Скачиваний:
12
Добавлен:
21.12.2018
Размер:
1.59 Mб
Скачать

Програма методу перебору

x3 – 4x2 + 2 = 0

A = 2

B = 5

H = 0.2

F(U) = (U - 4)UU +2

READ (5,13) A,B,H

13 FORMAT (2F5.1, F4.1)

X=A

V=F(X)

4 X=X+H

W=F(X)

IF (VW) 7,9,9

7 P=X-H/2

WRITE (6,14) P,X

14 FORMAT (‘ ‘,2F5.1)

9 V = W

IF (X-B) 4,11,11

11 PRINT 15

15 FORMAT (‘ ‘, ‘ВІДРІЗОК ПРОЙДЕНИЙ’)

STOP

END

    1. 5.0 0.2

Для алгебраїчного рівняння границі коренів

a0xn + a1xn-1+…+an-1x+an =0 (a0  0 )

A = max { |a1|,|a2|…|an|}

B = max { |a0|,|a1|…|an-1|}

Тоді всі корені цього рівняння задовольняють нерівності

r =  |x|  1+ = R

Алгоритм уточнення кореня рівняння методом половинного ділення

  1. Ввести вхідні дані A,B, EPS

  2. Обчислити V=F(A) і W=F(B)

  3. Обчислити X=(A+B)/2

  4. Обчислити Z=F(X)

  5. Перевірити виконання Z=0, якщо виконується то X – корінь і перейти на 10, якщо ні, то на 6.

  6. Перевірити V*Z<0, якщо виконується то на 8, якщо ні, то на 7.

  7. Присвоїти A=X, V=Z і перейти на 9.

  8. B=X, W=Z і перейти на 9.

  9. Перевірити виконання B-A > EPS. Якщо виконується, то процес ділення пополам продовжити переходячи на 3, якщо ні, то на 10.

10.Друкування X.

11.Кінець.

x

a

b

xn= (b-a)/2n ≤ε

n = ln((b-a)/ε) / ln2

Початок

Ввід a, b

1

f(a)f(b)>0

2

Функція не змінює знак

ні

x=

3

f(x)≤ε

так

4

ні

Вивід x,

f(x)

8

так

f(x)f(а)<0

5

b=x

7

ні

6

a=x

Алгоритм уточнення кореня методом хорд

Нехай відрізок ізоляції а,b кореня x* рівняння F(х)=0 знайшли. Причому нехай F(a)<0, F(b)>0 і F(x)>0.

Рівняння хорди АВ, як прямої, що проходить через точки А і В:

y = kx + l

У

Х

F(b)

F’>0

F’’>0

В

F(B)

b

O

F(A)

A

C

x1

x2

x*

a=x0

F(A)

у = 0, тоді

y1=f(x1)

y2=f(x2)

З 1-го рівняння

l= F(a)-ka=F(a)-a,

Тоді

y =

y - F(a)= (1)

Далі знаходимо абсцису (x1) перетину хорди з віссю ОХ, для неї у=0. Із (1)

x’’=b y’’=F(b)

x=a y=F(a)

x1=a-(b-a) (2)

Далі застосуємо цей метод для відрізку x1,b на кінцях якого функція F(x)має протилежні знаки і отримаємо :

(В ролі а буде x1_)

x2=x1-(b-x1) (3)

Тут кінець B нерухомий і рекурентна формула метода хорд

(4)

Послідовність a=x0……xn=b має за теоремою Вейерштрассе границю

Якщо то і || < 

Як вибрати нерухомий кінець?

Якщо а- нерухомий, то

(5)

Якщо знаки першої та другої похідної співпадають, то(4), якщо ні, то (5).

F’>0

F’’>0

a

b

x1

F’<0

F’’<0

a

b

x1

x*

F’>0

F’’<0

x*

F’<0

F’’>0