background image

1

Obliczanie pierwiastka dowolnego stopnia

1.1

Sformułowanie problemu

Zadaniem, które należy rozwiązać jest numeryczne obliczenie pierwiastka do-
wolnego stopnia z liczby nieujemnej:

=

m

a

(a ∈ R

+

, m ∈ N )

m

x

m

a

(1)

1.2

Rozwiązanie

Rozwiązanie powyższego problemu przeprowadzić można za pomocą nastę-
pującego schematu iteracyjnego:

x

0

a

x

j

=

1

m

"

(m − 1)x

j−1

+

a

(x

j−1

)

m−1

#

= 12, . . .

(2)

1.3

Wyprowadzenie

Niech

(x≡ x

m

− a

(3)

Poszukujemy x

?

takiego, że (x

?

) = 0. Dla x

?

spełnione jest więc tożsamo-

ściowo:

(x

?

)

m

− a = 0 ⇒ x

?

=

m

a

(4)

Niech x

j−1

będzie przybliżoną wartością x

?

. Wówczas w otoczeniu x

j−1

można

funkcję (x) można rozwinąć w następujący szereg:

(x) = (x

j−1

) +

dF

dx

(x

j−1

)(x − x

j−1

) + R

(5)

gdzie - wyrazy wyższego rzędu. Jeżeli pominiemy człon równania (5) to
wówczas zachodzi, że:

(x

?

≈ F (x

j−1

) +

dF

dx

(x

j−1

)(x

?

− x

j−1

)

(6)

Pamiętając, że (x

?

) = 0 otrzymujemy nowe przybliżenie dla x

j

:

0 = (x

j−1

) +

dF

dx

(x

j−1

)(x

j

− x

j−1

)

(7)

1

background image

Drogą trywialnego przekształcenia otrzymujemy:

−F (x

j−1

)

dF

dx

(x

j−1

)

x

j

− x

j−1

(8)

x

j

x

j−1

−F (x

j−1

)

dF

dx

(x

j−1

)

(9)

Z elementarnej analizy matematycznej wiemy, że pochodna funkcji (x) da-
nej równaniem (3) wyraża się następująco:

dF

dx

mx

m−1

(10)

Podstawiając x

j−1

do równań (3), (10) i (9) otrzymujemy kolejno:

(x

j−1

) = (x

j−1

)

m

− a

(11)

dF

dx

(x

j−1

) = m(x

j−1

)

m−1

(12)

x

j

x

j−1

(x

j−1

)

m

− a

m(x

j−1

)

m−1

(13)

Ostatnie wyrażenie można uprościć, stosując następujące przekształcenie:

x

j−1

(x

j−1

)

m

− a

m(x

j−1

)

m−1

x

j−1

1

m

x

m
j−
1

(x

j−1

)

m−1

|

{z

}

x

j−1

+

a

m(x

j−1

)

m−1

=

=

1

m

"

(m − 1)x

j−1

+

a

(x

j−1

)

m−1

#

(14)

1.4

Rozwiązanie algorytmiczne

Dla realizacji podanego powyżej schematu obliczeniowego (2) zastosować
można następujący algorytm:

1

x

p

: = a ;

2

d l a i : = 1 do n krokow wykonuj

3

r o z p o c z n i j

4

x

p

: = ( (m − 1 . 0 ) ∗ x

p

+ a / ( pow ( x

p

, m− 1 ) ) ) / m;

5

z a k o n c z

2

background image

1.5

Przykłady

Przykład 1 Obliczanie pierwiastka kwadratowego z 4.0
Zgodnie ze schematem obliczeniowym danym równaniem (2) podstawiamy
x

0

= 4.00 Równanie opisujące j-te przybliżenie rozwiązania przyjmuje po-

stać:

x

j

= 0.5

 

x

j−1

+

4.00

x

j−1

!

Poniżej zestawiono wyniki pierwszych 6 kroków metody.

x

0

=

4.0000000000e+000

2.5000000000e+000

x

1

=

2.5000000000e+000

2.0500000000e+000

x

2

=

2.0500000000e+000

2.0006097561e+000

x

3

=

2.0006097561e+000

2.0000000929e+000

x

4

=

2.0000000929e+000

2.0000000000e+000

x

5

=

2.0000000000e+000

2.0000000000e+000

Przykład 2 Obliczanie pierwiastka kwadratowego z 2.0
Zgodnie ze schematem obliczeniowym danym równaniem (2) podstawiamy
x

0

= 2.00 Równanie opisujące j-te przybliżenie rozwiązania przyjmuje po-

stać:

x

j

= 0.5

 

x

j−1

+

2.00

x

j−1

!

Poniżej zestawiono wyniki pierwszych 5 kroków metody.

x

0

=

2.0000000000e+000

1.5000000000e+000

x

1

=

1.5000000000e+000

1.4166666667e+000

x

2

=

1.4166666667e+000

1.4142156863e+000

x

3

=

1.4142156863e+000

1.4142135624e+000

x

4

=

1.4142135624e+000

1.4142135624e+000

Przykład 3 Obliczanie pierwiastka stopnia 7 z 3 (

7

3)

Poniżej zestawiono wyniki pierwszych 11 kroków metody.

x

0

=

3.0000000000e+000

2.5720164609e+000

x

1

=

2.5720164609e+000

2.2060659436e+000

x

2

=

2.2060659436e+000

1.8946316907e+000

x

3

=

1.8946316907e+000

1.6332356394e+000

x

4

=

1.6332356394e+000

1.4224965841e+000

x

5

=

1.4224965841e+000

1.2710096113e+000

x

6

=

1.2710096113e+000

1.1910921519e+000

x

7

=

1.1910921519e+000

1.1710258809e+000

x

8

=

1.1710258809e+000

1.1699338801e+000

x

9

=

1.1699338801e+000

1.1699308128e+000

x

10

=

1.1699308128e+000

1.1699308128e+000

3