Tarea Métodos Numéricos
Enviado por joseeeeee21 • 5 de Abril de 2023 • Trabajo • 735 Palabras (3 Páginas) • 68 Visitas
3/6/22, 21:23
Untitled7 - Jupyter Notebook
Nombres y Apellidos:Joan Job Gallardo Alcivar
Curso: Cuarto Nivel
Paralelo: "B"
Métodos Numéricos
In [ ]:
#Función de menú
def menu():
#Inicializamos variblaes
metodo=0
tecla="a"
#Un bucle que ayudará a escojar una o mas opciones, las veces que quieran
while metodo!=6:
print(
"-- l. Método Newthon Raphson \n" + "-- 2. Método Bisección \n" +
"-- 3. Método Aproximaciones sucesivas \n" +"-- 4. Método de la Secante
"-- 5. Método de Taylor \n" + "-- 6. Método de Ruffini \n" +
"-- 5. Cerrar El programa \n")
n_metodo=int(input("¿Qué método desea ejecutar?:"))
#Las condiciciones serviran para conocer la opción que se haya seleccionado
if n_metodo == 1:
print("metodo de biseccion ")
Biseccion()
nt=input("Pulse cualquier tecla")
if n_metodo == 2:
print("metodo de aproximación")
Aproximación()
nt=input("Pulse cualquier tecla")
if n_metodo == 3:
print("metodo del trapecio ")
Trapecio()
nt=input("Pulse cualquier tecla")
if n_metodo == 4:
print("metodo de newthon raphson")
Newton()
nt=input("Pulse cualquier tecla")
if n_metodo == 5:
print("metodo de Taylor")
Taylor()
nt=input("Pulse cualquier tecla")
if n_metodo == 6:
print("método ruffini")
Ruffini()
nt=input("Pulse cualquier tecla")
Biseccion
localhost:8888/notebooks/Untitled7.ipynb
1/8
3/6/22, 21:23
Untitled7 - Jupyter Notebook
In [1]:
import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
def Biseccion():
#Definimos nuestro datos y nuestro margen de error
a=1.0
b=1.6
c=0.0
Epsilon = 0.001
#En este método definimos la función
def funcion(x):
f= 4*x**2 -5*x
return (f)
#Las veces que va girar nuestro ciclo
numero=0
maximo=1000
# Dentro de nuestro bucle se hará el proceso de la bisección
while numero < maximo:
fx1=funcion(a)
fx2= funcion(b)
fx=fx1*fx2
c=(a+b)/2.0
fx3=funcion(c)
print("n= ", numero, "Xa = ", round(a,5), "Xb = ",round(b,5),"---------","f(xa)")
if fx3==0:
print("La raiz es: ", a)
break
elif fx2*fx3<0:
print ("Negativo")
a = c;fx1 = fx3
else:
b=c
fx2=fx3
print("Positivo")
#Cada vez que termine ira sumando uno hasta que llegue al 1000
numero=numero+1
#Se mostrará por pantalla nuestra raiz
if abs(a - b)< Epsilon:
print("------------------------------")
print("número= ", numero, "La raiz es= ", round(a,5),)
print("------------------------------")
break
n= 0 Xa
Positivo
n= 1 Xa
Negativo
n= 2 Xa
Negativo
n= 3 Xa
Positivo
n= 4 Xa
=
1.0 Xb =
1.6 --------- f(xa)
=
1.0 Xb =
1.3 --------- f(xa)
=
1.15 Xb =
=
1.225 Xb =
1.3 --------- f(xa)
=
1.225 Xb =
1.2625 --------- f(xa)
1.3 --------- f(xa)
localhost:8888/notebooks/Untitled7.ipynb
2/8
3/6/22, 21:23
Untitled7 - Jupyter Notebook
Negativo
n= 5 Xa = 1.24375 Xb = 1.2625 --------- f(xa)
Positivo
n= 6 Xa = 1.24375 Xb = 1.25313 --------- f(xa)
Negativo
n= 7 Xa = 1.24844 Xb = 1.25313 --------- f(xa)
Positivo
n= 8 Xa = 1.24844 Xb = 1.25078 --------- f(xa)
Negativo
n= 9 Xa = 1.24961 Xb = 1.25078 --------- f(xa)
Positivo
-----------------------------número= 10 La raiz es= 1.24961
------------------------------
localhost:8888/notebooks/Untitled7.ipynb
3/8
3/6/22, 21:23
Untitled7 - Jupyter Notebook
In [8]:
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
#4*x**2 -5*x
#Inicializamos un array
n=10
A=[1] * n
x= np.linspace(0, 10, 100)
#Definimos nuestra función
def funcion(x):
f= 4*x**2 -5*x
return (f)
for i in range (-5, n):
A[i]=round(funcion(i),5)
print (x)
y3=[0,0,0,0,0,0,0,0,0,0,0]
#Con PLT creamos nuestra gráfica
d={'A(i)' : A }
df= pd.DataFrame(data=d)
plt.title('Gráfica de la función f(x)= 4x**2-5x')
plt.xlabel('X')
plt.ylabel('Y')
plt.plot(y3, color="green")
plt.plot(df, color="red")
plt.legend()
y=0
linea =[y]*10
[ 0.
0.1010101
0.2020202
0.3030303
0.60606061 0.70707071 0.80808081 0.90909091
1.21212121 1.31313131 1.41414141 1.51515152
1.81818182 1.91919192 2.02020202 2.12121212
2.42424242 2.52525253 2.62626263 2.72727273
3.03030303 3.13131313 3.23232323 3.33333333
3.63636364
4.24242424
4.84848485
5.45454545
6.06060606
6.66666667
7.27272727
7.87878788
8.48484848
9.09090909
9.6969697
3.73737374
4.34343434
4.94949495
5.55555556
6.16161616
6.76767677
7.37373737
7.97979798
8.58585859
9.19191919
9.7979798
localhost:8888/notebooks/Untitled7.ipynb
3.83838384 3.93939394
4.44444444
...