Пример #1
0
def get_root(interval):
    a, b = interval
    step = 0
    while step < MAX_ITERATIONS:
        step += 1
        c = (a + b) / 2.0
        if abs(f(c)) < EPSILON and abs(f(b) - f(a)) < EPSILON:
            return c
        if same_sign(f(c), f(a)):
            a = c
        else:
            b = c
Пример #2
0
def get_root(interval):
    a, b = interval
    step = 0
    while step < MAX_ITERATIONS:
        step += 1
        c = (a + b) / 2.0
        if abs(f(c)) < EPSILON and abs(f(b) - f(a)) < EPSILON:
            return c
        if same_sign(f(c), f(a)):
            a = c
        else:
            b = c
Пример #3
0
def get_root(interval):
    a, b = interval
    old_c = 2**1000
    step = 0
    while step < MAX_ITERATIONS:
        step += 1
        c = (a*f(b)-b*f(a)) / (f(b) - f(a))
        if abs(f(c)) < EPSILON or abs(c-old_c) < EPSILON:
            return c
        if same_sign(f(c), f(a)):
            a = c
        else:
            b = c
        old_c = c
Пример #4
0
def get_root(interval):
    a, b = interval
    old_c = 2**1000
    step = 0
    while step < MAX_ITERATIONS:
        step += 1
        c = (a * f(b) - b * f(a)) / (f(b) - f(a))
        if abs(f(c)) < EPSILON or abs(c - old_c) < EPSILON:
            return c
        if same_sign(f(c), f(a)):
            a = c
        else:
            b = c
        old_c = c
Пример #5
0
def correct_interval(interval):
    return not same_sign(f(interval[0]), f(interval[1]))
Пример #6
0
def correct_interval(interval):
    return not same_sign(f(interval[0]), f(interval[1]))