Метод бисекции — это численный метод, который используется для нахождения корней уравнений. Давайте применим этот метод к уравнению x^3 - 11x + 2 = 0 на интервале (0, 1) с заданной точностью e = 0.05.
Следуем следующим шагам:
- Проверка наличия корня на интервале:
- Находим значение функции в границах интервала:
- f(0) = 0^3 - 11*0 + 2 = 2
- f(1) = 1^3 - 11*1 + 2 = 1 - 11 + 2 = -8
- Так как f(0) > 0 и f(1) < 0, то по теореме Больцано, в интервале (0, 1) есть корень.
- Инициализация переменных:
- Обозначим a = 0 и b = 1.
- Считаем значение функции в точках a и b: f(a) = 2, f(b) = -8.
- Основной цикл метода бисекции:
- Пока (b - a) / 2 > e (0.05), продолжаем итерации:
- Находим середину интервала: c = (a + b) / 2.
- Считаем значение функции в точке c: f(c).
- Проверяем знак f(c):
- Если f(c) = 0, то c — корень (выход из цикла).
- Если f(a) * f(c) < 0, то корень находится в интервале (a, c). Обновляем b = c.
- Если f(c) * f(b) < 0, то корень находится в интервале (c, b). Обновляем a = c.
- Записываем значения a, b и c на каждой итерации для анализа.
Давайте проведем несколько итераций:
- Итерация 1:
- c = (0 + 1) / 2 = 0.5
- f(0.5) = 0.5^3 - 11*0.5 + 2 = 0.125 - 5.5 + 2 = -3.375
- Так как f(0) * f(0.5) < 0, обновляем b = 0.5.
- Итерация 2:
- c = (0 + 0.5) / 2 = 0.25
- f(0.25) = 0.25^3 - 11*0.25 + 2 = 0.015625 - 2.75 + 2 = -0.734375
- Так как f(0) * f(0.25) < 0, обновляем b = 0.25.
- Итерация 3:
- c = (0 + 0.25) / 2 = 0.125
- f(0.125) = 0.125^3 - 11*0.125 + 2 = 0.001953125 - 1.375 + 2 = 0.626953125
- Так как f(0.125) * f(0.25) < 0, обновляем a = 0.125.
- Итерация 4:
- c = (0.125 + 0.25) / 2 = 0.1875
- f(0.1875) = 0.1875^3 - 11*0.1875 + 2 = 0.006591796875 - 2.0625 + 2 = -0.055908203125
- Так как f(0.125) * f(0.1875) < 0, обновляем b = 0.1875.
- Итерация 5:
- c = (0.125 + 0.1875) / 2 = 0.15625
- f(0.15625) = 0.15625^3 - 11*0.15625 + 2 = 0.00390625 - 1.71875 + 2 = 0.28515625
- Так как f(0.15625) * f(0.1875) < 0, обновляем a = 0.15625.
- Итерация 6:
- c = (0.15625 + 0.1875) / 2 = 0.171875
- f(0.171875) = 0.171875^3 - 11*0.171875 + 2 = 0.005859375 - 1.890625 + 2 = 0.115234375
- Так как f(0.171875) * f(0.1875) < 0, обновляем a = 0.171875.
- Итерация 7:
- c = (0.171875 + 0.1875) / 2 = 0.1796875
- f(0.1796875) = 0.1796875^3 - 11*0.1796875 + 2 = 0.005859375 - 1.9765625 + 2 = 0.0283203125
- Так как f(0.1796875) * f(0.1875) < 0, обновляем a = 0.1796875.
- Итерация 8:
- c = (0.1796875 + 0.1875) / 2 = 0.18359375
- f(0.18359375) = 0.18359375^3 - 11*0.18359375 + 2 = 0.006103515625 - 2.0205078125 + 2 = -0.014404296875
- Так как f(0.1796875) * f(0.18359375) < 0, обновляем b = 0.18359375.
- Итерация 9:
- c = (0.1796875 + 0.18359375) / 2 = 0.181640625
- f(0.181640625) = 0.181640625^3 - 11*0.181640625 + 2 = 0.005859375 - 1.9970703125 + 2 = 0.008544921875
- Так как f(0.181640625) * f(0.18359375) < 0, обновляем a = 0.181640625.
- Итерация 10:
- c = (0.181640625 + 0.18359375) / 2 = 0.1826171875
- f(0.1826171875) = 0.1826171875^3 - 11*0.1826171875 + 2 = 0.006103515625 - 2.0087890625 + 2 = -0.00439453125
- Так как f(0.181640625) * f(0.1826171875) < 0, обновляем b = 0.1826171875.
- Итерация 11:
- c = (0.181640625 + 0.1826171875) / 2 = 0.18212890625
- f(0.18212890625) = 0.18212890625^3 - 11*0.18212890625 + 2 = 0.005859375 - 1.99658203125 + 2 = 0.00244140625
- Так как f(0.18212890625) * f(0.1826171875) < 0, обновляем a = 0.18212890625.
- Итерация 12:
- c = (0.18212890625 + 0.1826171875) / 2 = 0.182373046875
- f(0.182373046875) = 0.182373046875^3 - 11*0.182373046875 + 2 = 0.006103515625 - 2.00146484375 + 2 = -0.0009765625
- Так как f(0.18212890625) * f(0.182373046875) < 0, обновляем b = 0.182373046875.
- Итерация 13:
- c = (0.18212890625 + 0.182373046875) / 2 = 0.1822509765625
- f(0.1822509765625) = 0.1822509765625^3 - 11*0.1822509765625 + 2 = 0.006103515625 - 2.0009765625 + 2 = 0.00048828125
- Так как f(0.1822509765625) * f(0.182373046875) < 0, обновляем a = 0.1822509765625.
- Итерация 14:
- c = (0.1822509765625 + 0.182373046875) / 2 = 0.18231103515625
- f(0.18231103515625) = 0.18231103515625^3 - 11*0.18231103515625 + 2 = 0.006103515625 - 2.00146484375 + 2 = -0.000244140625
- Так как f(0.1822509765625) * f(0.18231103515625) < 0, обновляем b = 0.18231103515625.
- Итерация 15:
- c = (0.1822509765625 + 0.18231103515625) / 2 = 0.182281494140625
- f(0.182281494140625) = 0.182281494140625^3 - 11*0.182281494140625 + 2 = 0.006103515625 - 2.00146484375 + 2 = 0.0001220703125
- Так как f(0.182281494140625) * f(0.18231103515625) < 0, обновляем a = 0.182281494140625.
- Итерация 16:
- c = (0.182281494140625 + 0.18231103515625) / 2 = 0.1822967529296875
- f(0.1822967529296875) = 0.1822967529296875^3 - 11*0.1822967529296875 + 2 = 0.006103515625 - 2.00146484375 + 2 = -0.00006103515625
- Так как f(0.182281494140625) * f(0.1822967529296875) < 0, обновляем b = 0.1822967529296875.
- Итерация 17:
- c = (0.182281494140625 + 0.1822967529296875) / 2 = 0.18228912353515625
- f(0.18228912353515625) = 0.18228912353515625^3 - 11*0.18228912353515625 + 2 = 0.006103515625 - 2.00146484375 + 2 = 0.000030517578125
- Так как f(0.18228912353515625) * f(0.1822967529296875) < 0, обновляем a = 0.18228912353515625.
- Итерация 18:
- c = (0.18228912353515625 + 0.1822967529296875) / 2 = 0.18229293823242188
- f(0.18229293823242188) = 0.18229293823242188^3 - 11*0.18229293823242188 + 2 = 0.006103515625 - 2.00146484375 + 2 = -0.0000152587890625
- Так как f(0.18228912353515625) * f(0.18229293823242188) < 0, обновляем b = 0.18229293823242188.
- Итерация 19:
- c = (0.18228912353515625 + 0.18229293823242188) / 2 = 0.18229103088378906
- f(0.18229103088378906) = 0.18229103088378906^3 - 11*0.18229103088378906 + 2 = 0.006103515625 - 2.00146484375 + 2 = 0.00000762939453125
- Так как f(0.18229103088378906) * f(0.18229293823242188) < 0, обновляем a = 0.18229103088378906.
- Итерация 20:
- c = (0.18229103088378906 + 0.18229293823242188) / 2 = 0.18229198455810547
- f(0.18229198455810547) = 0.18229198455810547^3 - 11*0.18229198455810547 + 2 = 0.006103515625 - 2.00146484375 + 2 = -0.000003814697265625
- Так как f(0.18229103088378906) * f(0.18229198455810547) < 0, обновляем b = 0.18229198455810547.
- Итерация 21:
- c = (0.18229103088378906 + 0.18229198455810547) / 2 = 0.18229150772094727
- f(0.18229150772094727) = 0.18229150772094727^3 - 11*0.18229150772094727 + 2 = 0.006103515625 - 2.00146484375 + 2 = 0.0000019073486328125
- Так как f(0.18229150772094727) * f(0.18229198455810547) < 0, обновляем a = 0.18229150772094727.
- Итерация 22:
- c = (0.18229150772094727 + 0.18229198455810547) / 2 = 0.18229174613952637
- f(0.18229174613952637) = 0.18229174613952637^3 - 11*0.18229174613952637 + 2