Documentos de Académico
Documentos de Profesional
Documentos de Cultura
def g(b):
g=0.2*(math.sin(16*b)) - b + 1.75
return g
def dg(b):
dg=3.2*(math.cos(16*b))-1
return dg
def f(a):
f=0.2*(math.sin(16*a)) - a + 1.75
return f
def h(c):
h=0.2*(math.sin(16*c)) - c + 1.75
return h
print(" \nRESULTADOS:")
print("============\n")
#Creando funcion principal
def hib_new_bis(f,g,h,dg,a,b,c,tol):
error = 10
n=0
i=0
while error > tol:
valor = f(a) * h(c)
if valor < 0:
a=a
b=c
c = (a + b) / 2
else:
a=c
b=b
c = (a + b) / 2
error=abs(c-a)/c*100
i+=1
print(f"iteracion N° :{i}, por el metodo de biseccion, raiz =
{c:.8f}")
if (c>=a or c<=b):
while error > tol:
bi = b - g(b) / dg(b)
error = abs((bi - b) * 100 / bi)
b = bi
n += 1
print(f"iteracion N° :{i+n}, por el metodo de newton R,
raiz = {b:.8f}")
else:
while error > tol:
valor = f(a) * h(c)
if valor < 0:
a = a
b = c
c = (a + b) / 2
else:
a = c
b = b
c = (a + b) / 2
error = abs(c - a) / c * 100
i += 1
print("\n RESUMEN DE LOS RESULTADOS:")
print("===========================\n")
print(f"El error es de --> {error:.5f}%")
print(f"Cantidad de iteraciones realizadas --> {n + i} iteraciones")
print(f"Raiz de la funcion = {b:.8f}")
hib_new_bis(f,g,h,dg,a,b,c,tol=1e-40)
def f(x):
f=x**20-1
return f
def g(xi):
g=xi**20-1
return g
def h(xo):
h=xo**20-1
return h
def hib_sec_bis(f,g,h,xi,x,xo,tol):
n=0
i=0
error=10
if valor < 0:
x = xo
xi = xi
xo = (x + xi) / 2
else:
x = x
xi = xo
xo = (x + xi) / 2
hib_sec_bis(f,g,h,xi,x,xo,tol=1e-40)