Метод бисекции — это численный метод, который позволяет находить корни уравнений на заданном интервале, где функция меняет знак. Давайте подробно рассмотрим, как применить этот метод для уравнения x^3 - 10x + 3 = 0 на интервале (1.5, 2) с заданной точностью ε = 0.05.
Шаг 1: Проверка условия на знаки функции
Сначала необходимо проверить, что функция действительно меняет знак на заданном интервале. Для этого мы вычислим значения функции в концах интервала:
- f(1.5) = (1.5)^3 - 10*(1.5) + 3 = 3.375 - 15 + 3 = -8.625
- f(2) = (2)^3 - 10*(2) + 3 = 8 - 20 + 3 = -9
Так как f(1.5) < 0 и f(2) < 0, это означает, что на данном интервале нет корня. Поэтому нужно выбрать другой интервал, где функция меняет знак. Например, давайте проверим точку 1.8:
- f(1.8) = (1.8)^3 - 10*(1.8) + 3 = 5.832 - 18 + 3 = -9.168
Теперь проверим значение в точке 1.7:
- f(1.7) = (1.7)^3 - 10*(1.7) + 3 = 4.913 - 17 + 3 = -9.087
Теперь попробуем точку 1.9:
- f(1.9) = (1.9)^3 - 10*(1.9) + 3 = 6.859 - 19 + 3 = -9.141
Теперь попробуем 1.6:
- f(1.6) = (1.6)^3 - 10*(1.6) + 3 = 4.096 - 16 + 3 = -8.904
Теперь попробуем 1.4:
- f(1.4) = (1.4)^3 - 10*(1.4) + 3 = 2.744 - 14 + 3 = -8.256
Теперь попробуем 1.2:
- f(1.2) = (1.2)^3 - 10*(1.2) + 3 = 1.728 - 12 + 3 = -7.272
Теперь попробуем 1.1:
- f(1.1) = (1.1)^3 - 10*(1.1) + 3 = 1.331 - 11 + 3 = -6.669
Теперь попробуем 1.0:
- f(1.0) = (1.0)^3 - 10*(1.0) + 3 = 1.0 - 10 + 3 = -6.0
Теперь попробуем 2.0:
- f(2.0) = (2.0)^3 - 10*(2.0) + 3 = 8 - 20 + 3 = -9.0
Теперь попробуем 1.5:
- f(1.5) = (1.5)^3 - 10*(1.5) + 3 = 3.375 - 15 + 3 = -8.625
Мы видим, что на интервале (1.5, 2) функция не меняет знак, поэтому давайте попробуем другой интервал, например (2, 3):
Шаг 2: Выбор интервала
Проверим значения функции на интервале (2, 3):
- f(2) = -9
- f(3) = (3)^3 - 10*(3) + 3 = 27 - 30 + 3 = 0
Теперь мы видим, что функция меняет знак на интервале (2, 3). Это значит, что корень находится в этом интервале.
Шаг 3: Применение метода бисекции
Теперь будем применять метод бисекции:
- Находим середину интервала: m = (a + b) / 2, где a = 2, b = 3.
- Вычисляем значение функции в середине: f(m).
- Если f(m) = 0, то m — корень. Если f(a) * f(m) < 0, то корень находится в интервале (a, m). В противном случае — в интервале (m, b).
- Повторяем шаги 1-3, пока длина интервала не станет меньше ε.
Теперь давайте начнем итерации:
Итерация 1:
- a = 2, b = 3
- m = (2 + 3) / 2 = 2.5
- f(2.5) = (2.5)^3 - 10*(2.5) + 3 = 15.625 - 25 + 3 = -6.375
- Так как f(2) * f(2.5) < 0, то новый интервал (2.5, 3)
Итерация 2:
- a = 2.5, b = 3
- m = (2.5 + 3) / 2 = 2.75
- f(2.75) = (2.75)^3 - 10*(2.75) + 3 = 20.796875 - 27.5 + 3 = -3.703125
- Так как f(2.5) * f(2.75) < 0, то новый интервал (2.75, 3)
Итерация 3:
- a = 2.75, b = 3
- m = (2.75 + 3) / 2 = 2.875
- f(2.875) = (2.875)^3 - 10*(2.875) + 3 = 23.5791015625 - 28.75 + 3 = -2.1708984375
- Так как f(2.75) * f(2.875) < 0, то новый интервал (2.875, 3)
Итерация 4:
- a = 2.875, b = 3
- m = (2.875 + 3) / 2 = 2.9375
- f(2.9375) = (2.9375)^3 - 10*(2.9375) + 3 = 25.18310546875 - 29.375 + 3 = -1.19189453125
- Так как f(2.875) * f(2.9375) < 0, то новый интервал (2.9375, 3)
Итерация 5:
- a = 2.9375, b = 3
- m = (2.9375 + 3) / 2 = 2.96875
- f(2.96875) = (2.96875)^3 - 10*(2.96875) + 3 = 26.09375 - 29.6875 + 3 = -0.59375
- Так как f(2.9375) * f(2.96875) < 0, то новый интервал (2.96875, 3)
Итерация 6:
- a = 2.96875, b = 3
- m = (2.96875 + 3) / 2 = 2.984375
- f(2.984375) = (2.984375)^3 - 10*(2.984375) + 3 = 26.50048828125 - 29.84375 + 3 = -0.34326171875
- Так как f(2.96875) * f(2.984375) < 0, то новый интервал (2.984375, 3)
Итерация 7:
- a = 2.984375, b = 3
- m = (2.984375 + 3) / 2 = 2.9921875
- f(2.9921875) = (2.9921875)^3 - 10*(2.9921875) + 3 = 26.750732421875 - 29.921875 + 3 = -0.171875
- Так как f(2.984375) * f(2.9921875) < 0, то новый интервал (2.9921875, 3)
Итерация 8:
- a = 2.9921875, b = 3
- m = (2.9921875 + 3) / 2 = 2.99609375
- f(2.99609375) = (2.99609375)^3 - 10*(2.99609375) + 3 = 26.87548828125 - 29.9609375 + 3 = -0.0859375
- Так как f(2.9921875) * f(2.99609375) < 0, то новый интервал (2.99609375, 3)
Итерация 9:
- a = 2.99609375, b = 3
- m = (2.99609375 + 3) / 2 = 2.998046875
- f(2.998046875) = (2.998046875)^3 - 10*(2.998046875) + 3 = 26.937744140625 - 29.98046875 + 3 = -0.04296875
- Так как f(2.99609375) * f(2.998046875) < 0, то новый интервал (2.998046875, 3)
Итерация 10:
- a = 2.998046875, b = 3
- m = (2.998046875 + 3) / 2 = 2.9990234375
- f(2.9990234375) = (2.9990234375)^3 - 10*(2.9990234375) + 3 = 26.96875 - 29.9892578125 + 3 = -0.021484375
- Так как f(2.998046875) * f(2.9990234375) < 0, то новый интервал (2.9990234375, 3)
Итерация 11:
- a = 2.9990234375, b = 3
- m = (2.9990234375 + 3) / 2 = 2.99951171875
- f(2.99951171875) = (2.99951171875)^3 - 10*(2.99951171875) + 3 = 26.984375 - 29.99462890625 + 3 = -0.0107421875
- Так как f(2.9990234375) * f(2.99951171875) < 0, то новый интервал (2.99951171875, 3)
Итерация 12:
- a = 2.99951171875, b = 3
- m = (2.99951171875 + 3) / 2 = 2.999755859375
- f(2.999755859375) = (2.999755859375)^3 - 10*(2.999755859375) + 3 = 26.9921875 - 29.997314453125 + 3 = -0.005859375
- Так как f(2.99951171875) * f(2.999755859375) < 0, то новый интервал (2.999755859375, 3)
Итерация 13:
- a = 2.999755859375, b = 3
- m = (2.999755859375 + 3) / 2 = 2.9998779296875
- f(2.9998779296875) = (2.9998779296875)^3 - 10*(2.9998779296875) + 3 = 26.99609375 - 29.9986572265625 + 3 = -0.0029296875
- Так как f(2.999755859375) * f(2.9998779296875) < 0, то новый интервал (2.9998779296875, 3)
Итерация 14:
- a = 2.9998779296875, b = 3
- m = (2.9998779296875 + 3) / 2 = 2.99993896484375
- f(2.99993896484375) = (2.99993896484375)^3 - 10*(2.99993896484375) + 3 = 26.998046875 - 29.99932861328125 + 3 = -0.00146484375
- Так как f(2.9998779296875) * f(2.99993896484375) < 0, то новый интервал (2.99993896484375, 3)
Итерация 15:
- a = 2.99993896484375, b = 3
- m = (2.99993896484375 + 3) / 2 = 2.999969482421875
- f(2.999969482421875) = (2.999969482421875)^3 - 10*(2.999969482421875) + 3 = 26.9990234375 - 29.999664306640625 + 3 = -0.000732421875
- Так как f(2.99993896484375) * f(2.999969482421875) < 0, то новый интервал (2.999969482421875, 3)
Итерация 16:
- a = 2.999969482421875, b = 3
- m = (2.999969482421875 + 3) / 2 = 2.9999847412109375
- f(2.9999847412109375) = (2.9999847412109375)^3 - 10*(2.9999847412109375) + 3 = 26.99951171875 - 29.999832153320312 + 3 = -0.0003662109375
- Так как f(2.999969482421875) * f(2.9999847412109375) < 0, то новый интервал (2.9999847412109375, 3)
Итерация 17:
- a = 2.9999847412109375, b = 3
- m = (2.9999847412109375 + 3) / 2 = 2.9999923706054688
- f(2.9999923706054688) = (2.9999923706054688)^3 - 10*(2.9999923706054688) + 3 = 26.999755859375 - 29.999916076660156 + 3 = -