Przykładowe zadania - równania nieliniowe : styczeń 2008
1
Zadanie 1. Znaleźć rozwiązanie równania x 2 − 1 = 0 w przedziale [ a; b] = [ − 1 , 3; − 0 , 5]
metodą bisekcji zakładając wielkość błędu ∆ = 0 , 25.
Odpowiedź:
Po pierwsze sprawdzamy czy |b − a| ¬ ∆. Mamy | − 0 , 5 − ( − 1 , 3) | = 0 , 8 > ∆ = 0 , 25.
W tej sytuacji obliczamy x = 0 , 5 ∗ ( a + b) = 0 , 5 ∗ ( − 1 , 3 + ( − 0 , 5)) = − 0 , 9.
Po drugie sprawdzamy czy f ( x) = 0.
Mamy f ( x = − 0 , 9) = ( − 0 , 9)2 − 1 = 0 , 81 − 1 = − 0 , 19 czyli f ( x) 6= 0.
Po trzecie określamy nowy przedział [ a; b] taki, dla którego zachodzi f ( a) f ( b) < 0.
Dla dwóch możliwych przedziałów [ a; x] i [ x; b] czyli [ − 1 , 3; − 0 , 9] i [ − 0 , 9; − 0 , 5], mamy: f ( − 1 , 3) ∗ f ( − 0 , 9) = 0 , 69 ∗ ( − 0 , 19) = − 0 , 1311 < 0,
f ( − 0 , 9) ∗ f ( − 0 , 5) = − 0 , 19 ∗ ( − 0 , 75) = 0 , 1425 > 0.
Stąd nowy przedział [ a; b] = [ − 1 , 3; − 0 , 9].
I powtarzamy dotychczasowy algorytm obliczeń dla nowego przedziału.
Sprawdzamy czy |b − a| ¬ ∆. Mamy | − 0 , 9 − ( − 1 , 3) | = 0 , 4 > ∆ = 0 , 25.
Obliczamy x = 0 , 5 ∗ ( a + b) = 0 , 5 ∗ ( − 1 , 3 + ( − 0 , 9)) = − 1 , 1.
Sprawdzamy czy f ( x) = 0.
Mamy f ( x = − 1 , 1) = ( − 1 , 1)2 − 1 = 1 , 21 − 1 = 0 , 21 czyli f ( x) 6= 0.
Określamy nowy przedział [ a; b] taki, dla którego zachodzi f ( a) f ( b) < 0.
Dla dwóch możliwych przedziałów [ a; x] i [ x; b] czyli [ − 1 , 3; − 1 , 1] i [ − 1 , 1; − 0 , 9], mamy: f ( − 1 , 3) ∗ f ( − 1 , 1) = 0 , 69 ∗ 0 , 21 = 0 , 1449 > 0,
f ( − 1 , 1) ∗ f ( − 0 , 9) = 0 , 21 ∗ ( − 0 , 19) = − 0 , 0399 < 0.
Stąd nowy przedział [ − 1 , 1; − 0 , 9].
I powtarzamy algorytm obliczeń dla nowego przedziału.
Sprawdzamy czy |b − a| ¬ ∆. Mamy | − 0 , 9 − ( − 1 , 1) | = 0 , 2 < ∆ = 0 , 25 !!!.
Obliczamy x∗ = 0 , 5 ∗ ( a + b) = 0 , 5 ∗ ( − 1 , 1 + ( − 0 , 9)) = − 1 , 0.
I koniec obliczeń. Rozwiązaniem równania jest więc x∗ = − 1 , 0.
Zadanie 2. Rozwiązać podane równanie nieliniowe x 2 − 1 = 0 metodą stycznych, przyj-
mując punkt startowy x 0 = − 0 , 9 i wielkość błędu ∆ = 0 , 25.
Odpowiedź:
Po pierwsze obliczamy wartości f ( x 0) i f ′( x 0):
f ( x 0) = ( − 0 , 9)2 − 1 = − 0 , 19 i f ′( x 0) = 2 ∗ ( − 0 , 9) = − 1 , 8.
Po drugie obliczamy nowe przybliżenie rozwiązania równiania korzystając
ze wzoru metody stycznych:
x = x 0 − f ( x 0) /f ′( x 0) = − 0 , 9 − ( − 0 , 19) /( − 1 , 8) = − 0 , 9 − 0 , 1056 = − 1 , 0056.
Po trzecie sprawdzamy czy |x 0 − x| ¬ ∆. Czyli | − 0 , 9 − ( − 1 , 0056) | = 0 , 1056 < ∆ = 0 , 25 !!!
I koniec obliczeń. Rozwiązaniem równania jest x∗ = − 1 , 0056.
Przykładowe zadania - równania nieliniowe : styczeń 2008
2
Zadanie 3. Znaleźć rozwiązanie równania x 2 − 1 = 0 w przedziale [ a; b] = [ − 1 , 3; − 0 , 5]
metodą regula falsi zakładając wielkość błędu ∆ = 0 , 25.
Odpowiedź:
Na początku sprawdzamy czy f ( a) f ( b) < 0.
Mamy: f ( − 1 , 3) ∗ f ( − 0 , 5) = 0 , 69 ∗ ( − 0 , 75) = − 0 , 5175 < 0.
Po pierwsze obliczamy ze wzoru x = [ a ∗ f ( b) − b ∗ f ( a)] /[ f ( b) − f ( a)].
Czyli x = ( − 1 , 3 ∗ ( − 0 , 75) − ( − 0 , 5) ∗ 0 , 69) /( − 0 , 75 − 0 , 69) = − 0 , 9167.
Po drugie sprawdzamy czy |b − a| ¬ ∆. Mamy | − 0 , 5 − ( − 1 , 3) | = 0 , 8 > ∆ = 0 , 25.
Po trzecie sprawdzamy czy f ( x) = 0.
Mamy f ( x = − 0 , 9167) = ( − 0 , 9167)2 − 1 = 0 , 8403 − 1 = − 0 , 1597 czyli f ( x) 6= 0.
Po czwarte określamy nowy przedział [ a; b] taki, dla którego zachodzi f ( a) f ( b) < 0.
Dla dwóch możliwych przedziałów [ a; x] i [ x; b] czyli [ − 1 , 3; − 0 , 9167] i [ − 0 , 9167; − 0 , 5], mamy: f ( − 1 , 3) ∗ f ( − 0 , 9167) = 0 , 69 ∗ ( − 0 , 1597) < 0,
f ( − 0 , 9167) ∗ f ( − 0 , 5) = − 0 , 1597 ∗ ( − 0 , 75) > 0.
Stąd nowy przedział [ a; b] = [ − 1 , 3; − 0 , 9167].
I powtarzamy dotychczasowy algorytm obliczeń dla nowego przedziału.
Obliczamy x = ( a ∗ f ( b) − b ∗ f ( a)) /( f ( b) − f ( a)).
Czyli x = ( − 1 , 3 ∗ ( − 0 , 1597) − ( − 0 , 9167) ∗ 0 , 69) /( − 0 , 1597 − 0 , 69) = − 0 , 9887.
Sprawdzamy czy |b − a| ¬ ∆, | − 0 , 9167 − ( − 1 , 3) | = 0 , 3833 > ∆ = 0 , 25.
Sprawdzamy czy f ( x) = 0.
Mamy f ( x = − 0 , 9887) = ( − 0 , 9887)2 − 1 = 0 , 9775 − 1 = − 0 , 0225 czyli f ( x) 6= 0.
Określamy nowy przedział [ a; b]. Dla dwóch możliwych przedziałów [ a; x] i [ x; b] mamy:
f ( − 1 , 3) ∗ f ( − 0 , 9887) = 0 , 69 ∗ ( − 0 , 0225) < 0,
f (0 , 9887) ∗ f ( − 0 , 9167) = − 0 , 0225 ∗ ( − 0 , 1597) > 0.
Stąd nowy przedział [ a; b] = [ − 1 , 3; − 0 , 9887].
I powtarzamy algorytm obliczeń dla nowego przedziału.
Obliczamy x = ( − 1 , 3 ∗ ( − 0 , 0225) − ( − 0 , 9887) ∗ 0 , 69) /( − 0 , 0225 − 0 , 69) = − 0 , 9985.
Sprawdzamy czy |b − a| ¬ ∆. Mamy | − 0 , 9887 − ( − 1 , 3) | = 0 , 3113 > ∆ = 0 , 25.
Sprawdzamy czy f ( x) = 0.
f ( x = − 0 , 9985) = ( − 0 , 9985)2 − 1 = 0 , 997 − 1 = − 0 , 003 czyli f ( x) 6= 0.
Nowy przedział. Dla dwóch możliwych przedziałów [ a; x] i [ x; b] mamy:
f ( − 1 , 3) ∗ f ( − 0 , 9985) = 0 , 69 ∗ ( − 0 , 003) < 0,
f (0 , 9985) ∗ f ( − 0 , 9887) = − 0 , 003 ∗ ( − 0 , 0225) > 0.
Stąd nowy przedział [ a; b] = [ − 1 , 3; − 0 , 9985].
I powtarzamy algorytm obliczeń dla nowego przedziału.
Obliczamy x = ( − 1 , 3 ∗ ( − 0 , 003) − ( − 0 , 9985) ∗ 0 , 69) /( − 0 , 003 − 0 , 69) = − 0 , 9998.
Sprawdzamy czy |b − a| ¬ ∆. Mamy | − 0 , 9985 − ( − 1 , 3) | = 0 , 3015 > ∆ = 0 , 25.
Sprawdzamy czy f ( x) = 0.
f ( x = − 0 , 9998) = ( − 0 , 9998)2 − 1 = 0 , 9996 − 1 = − 0 , 0004 czyli f ( x) 6= 0.
Nowy przedział.
Dla dwóch możliwych przedziałów [ a; x] i [ x; b] mamy:
f ( − 1 , 3) ∗ f ( − 0 , 9998) = 0 , 69 ∗ ( − 0 , 0004) < 0,
f (0 , 9998) ∗ f ( − 0 , 9985) = − 0 , 0004 ∗ ( − 0 , 003) > 0.
Stąd nowy przedział [ a; b] = [ − 1 , 3; − 0 , 9998].
I powtarzamy algorytm obliczeń dla nowego przedziału.
Obliczamy
x = ( − 1 , 3 ∗ ( − 0 , 0004) − ( − 0 , 9998) ∗ 0 , 69) /( − 0 , 0004 − 0 , 69) = 0 , 6904 /( − 0 , 6904) = − 1 , 0.
Sprawdzamy czy |b − a| ¬ ∆. Mamy | − 0 , 9998 − ( − 1 , 3) | = 0 , 3002 > ∆ = 0 , 25.
Sprawdzamy czy f ( x) = 0.
f ( x = − 1 , 0) = ( − 1 , 0)2 − 1 = 1 − 1 = 0 , 0 czyli f ( x) = 0.
I koniec obliczeń. Rozwiązaniem równania jest więc x∗ = − 1 , 0.
Przykładowe zadania - równania nieliniowe : styczeń 2008
3
Zadanie 4. Rozwiązać podane równanie nieliniowe x 2 − 1 = 0 metodą iteracji prostej,
przyjmując punkt startowy x 0 = − 0 , 5 i α = 0 , 5 oraz wielkość błędu ∆ = 0 , 25.
Odpowiedź:
Po pierwsze korzystając ze wzoru x = x 0 + αf ( x 0) obliczamy nowe przybliżenie rozwiązania
równania f ( x) = 0. Czyli mamy:
x = x 0 + α( x 2 − 1) = − 0 , 5 + 0 , 5 ∗ (( − 0 , 5)2 − 1) = − 0 , 5 + 0 , 5 ∗ ( − 0 , 75) = − 0 , 875.
0
Po drugie sprawdzamy czy |x − x 0 | ¬ ∆. Czyli | − 0 , 875 − ( − 0 , 5) | = 0 , 375 > ∆ = 0 , 25.
Ponieważ warunek |x − x 0 | ¬ ∆ nie jest spełniony obliczamy ponownie x przyjmując teraz jako
x 0 poprzednio obliczone x = − 0 , 875. Mamy teraz:
x = x 0 + α( x 2 − 1) = − 0 , 875 + 0 , 5 ∗ (( − 0 , 875)2 − 1) = − 0 , 875 + 0 , 5 ∗ ( − 0 , 2344) = − 0 , 9922.
0
Sprawdzamy czy |x − x 0 | ¬ ∆. Czyli | − 0 , 9922 − ( − 0 , 875) | = 0 , 1172 < ∆ = 0 , 25 !!!
I koniec obliczeń. Rozwiązaniem równania jest x∗ = − 0 , 9922.
Zadanie 5. Znaleźć rozwiązanie równania x 2 − 1 = 0 w przedziale [ a; b] = [ − 1 , 3; − 0 , 5]
metodą siecznych zakładając wielkość błędu ∆ = 0 , 25.
Odpowiedź:
Po pierwsze przyjmujemy:
xi = a = − 1 , 3; xi+1 = b = − 0 , 5; fi = f ( a) = 0 , 69; fi+1 = f ( b) = − 0 , 75.
Po drugie obliczamy x ze wzoru x = ( xi ∗ fi+1 − xi+1 ∗ fi) /( fi+1 − fi). Czyli x =
( − 1 , 3 ∗ ( − 0 , 75) − ( − 0 , 5) ∗ 0 , 69) /( − 0 , 75 − 0 , 69) = − 0 , 9167.
Po trzecie sprawdzamy czy |b − a| ¬ ∆. Mamy | − 0 , 5 − ( − 1 , 3) | = 0 , 8 > ∆ = 0 , 25.
Po czwarte sprawdzamy czy f ( x) = 0.
Mamy f ( x = − 0 , 9167) = ( − 0 , 9167)2 − 1 = 0 , 8403 − 1 = − 0 , 1597 czyli f ( x) 6= 0.
Po piąte określamy nowy przedział [ xi; xi+1] taki, że ”nowe” xi jest teraz równe ”staremu” xi+1
z poprzednich obliczeń czyli xi = − 0 , 5. ”Nowe” xi+1 jest teraz równe x obliczonemu powyżej
czyli x = − 0 , 9167.
I powtarzamy dotychczasowy algorytm obliczeń dla nowego przedziału.
Przyjmujemy: xi = − 0 , 5; xi+1 = − 0 , 9167; fi = − 0 , 75; fi+1 = − 0 , 1597.
Obliczamy: x = ( − 0 , 5 ∗ ( − 0 , 1597) − ( − 0 , 9167) ∗ ( − 0 , 75) /( − 0 , 1597 − ( − 0 , 75)) = − 0 , 997.
Sprawdzamy czy |b − a| ¬ ∆. Mamy | − 0 , 9167 − ( − 0 , 5) | = 0 , 4167 > ∆ = 0 , 25.
Sprawdzamy czy f ( x) = 0.
Mamy f ( x = − 0 , 997) = ( − 0 , 997)2 − 1 = 0 , 994 − 1 = − 0 , 006 czyli f ( x) 6= 0.
Określamy nowy przedział [ xi; xi+1] = [ − 0 , 9167; − 0 , 997].
I powtarzamy algorytm obliczeń dla nowego przedziału.
Przyjmujemy xi = − 0 , 9167; xi+1 = − 0 , 997; fi = − 0 , 1597; fi+1 = − 0 , 006.
Obliczamy x = ( − 0 , 9167 ∗ ( − 0 , 006) − ( − 0 , 997) ∗ ( − 0 , 1597) /( − 0 , 006 − ( − 0 , 1597)) =
− 0 , 1537 / 0 , 1537 = − 1 , 0.
Sprawdzamy czy |b − a| ¬ ∆. Mamy | − 0 , 997 − ( − 0 , 9167) | = 0 , 0803 < ∆ = 0 , 25.
Sprawdzamy jeszcze czy f ( x) = 0.
Mamy f ( x = − 1 , 0) = ( − 1 , 0)2 − 1 = 1 − 1 = 0.
I koniec obliczeń. Rozwiązaniem równania jest więc znów x∗ = − 1 , 0.
Zadanie 6. Znaleźć rozwiązanie równania x 3 − x − 1 = 0 w przedziale [ a; b] = [1 , 0; 2 , 0]
metodą bisekcji zakładając wielkość błędu ∆ = 0 , 01.
Przykładowe zadania - równania nieliniowe : styczeń 2008
4
Zadanie 7. Znaleźć rozwiązanie równania x 3 − x − 1 = 0 w przedziale [ a; b] = [1 , 0; 2 , 0]
metodą regula falsi zakładając wielkość błędu ∆ = 0 , 01.
Zadanie 8. Znaleźć rozwiązanie równania x 3 − x − 1 = 0 w przedziale [ a; b] = [1 , 0; 2 , 0]
metodą siecznych zakładając wielkość błędu ∆ = 0 , 01.
Zadanie 9. Rozwiązać podane równanie nieliniowe x 3 + x 2 − 3 x− 3 = 0 metodą stycznych,
przyjmując punkt startowy x 0 = 2 i wielkość błędu ∆ = 0 , 01.
Zadanie 10. Rozwiązać podane równanie nieliniowe x 3 + x 2 − 3 x − 3 = 0 metodą iteracji
prostej, przyjmując punkt startowy x 0 = 2 oraz wielkość błędu ∆ = 0 , 01.
UWAGA:
Wartość współczynnika α należy ustalić zgodnie z uwagami w konspekcie dotyczącymi me-
tody iteracji prostej.