0% encontró este documento útil (0 votos)
63 vistas3 páginas

Preg 3

Este documento describe el algoritmo de bisección para encontrar una raíz aproximada de una función dada mediante iteraciones sucesivas. Se ingresan los valores iniciales inferior y superior, y el número de iteraciones. Luego se calcula el punto medio en cada paso y se compara el valor de la función en los puntos para reducir el intervalo e ir aproximando la raíz.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
63 vistas3 páginas

Preg 3

Este documento describe el algoritmo de bisección para encontrar una raíz aproximada de una función dada mediante iteraciones sucesivas. Se ingresan los valores iniciales inferior y superior, y el número de iteraciones. Luego se calcula el punto medio en cada paso y se compara el valor de la función en los puntos para reducir el intervalo e ir aproximando la raíz.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Código: de Bisección

funcion = input('Escriba la f(x) entre parentesis:','s')

funcion = inline(funcion);

xi = input('Ingrese el valor de xi inferior: ');

xu = input('Ingrese el valor de xu superior: ');

cantidad = input('Ingrese el numero de iteraciones:');

i=1;

if funcion(xi)*funcion(xu)<0

fprintf("%s\t%s\t%s\t%s\t%s\t\%s\t\%s\n", 'i','xi','xu','xr','f(xi)','f(xr)', 'f(xi)*f(xr)')

while i < cantidad

xr = (xi + xu)/2;

fprintf("%d\t", i)

fprintf("%.4f\t", xi)

fprintf("%.4f\t", xu)

fprintf("%.4f\t", xr)

fprintf("%.4f\t", funcion(xi))

fprintf("%.4f\t", funcion(xr))

if funcion(xi)*funcion(xr)<0

fprintf("%.4f\t", funcion(xi)*funcion(xr))

xu = xr;

elseif funcion(xi)*funcion(xr)>0

fprintf("%.4f\t", funcion(xi)*funcion(xr))
xi = xr;

elseif funcion(xr)==0

fprintf("%s","raiz encontrada")

break

endif

fprintf("\n")

i++;

endwhile

fprintf(" la raiz aproximada es: %.4f \n", xr)

else

fprintf("%s","no se puede resolver por este metodo")

endif
Ventana de Comando
ં>> Bisecc

Escriba la f(x) entre parentesis:(e^x +2^-x +2*cos(x)-6)

funcion = (e^x +2^-x +2*cos(x)-6)

warning: inline is obsolete; use anonymous functions instead

Ingrese el valor de xi inferior: 0

Ingrese el valor de xu superior: 4

Ingrese el numero de iteraciones:20

i xi xu xr f(xi) f(xr) f(xi)*f(xr)

1 0.0000 4.0000 2.0000 -2.0000 0.8068 -1.6135

2 0.0000 2.0000 1.0000 -2.0000 -1.7011 3.4022

3 1.0000 2.0000 1.5000 -1.7011 -1.0233 1.7407

4 1.5000 2.0000 1.7500 -1.0233 -0.3046 0.3117

5 1.7500 2.0000 1.8750 -0.3046 0.1944 -0.0592

6 1.7500 1.8750 1.8125 -0.3046 -0.0683 0.0208

7 1.8125 1.8750 1.8438 -0.0683 0.0596 -0.0041

8 1.8125 1.8438 1.8281 -0.0683 -0.0052 0.0004

9 1.8281 1.8438 1.8359 -0.0052 0.0270 -0.0001

10 1.8281 1.8359 1.8320 -0.0052 0.0109 -0.0001

11 1.8281 1.8320 1.8301 -0.0052 0.0029 -0.0000

12 1.8281 1.8301 1.8291 -0.0052 -0.0012 0.0000

13 1.8291 1.8301 1.8296 -0.0012 0.0008 -0.0000

14 1.8291 1.8296 1.8293 -0.0012 -0.0002 0.0000

15 1.8293 1.8296 1.8295 -0.0002 0.0003 -0.0000

16 1.8293 1.8295 1.8294 -0.0002 0.0001 -0.0000

17 1.8293 1.8294 1.8294 -0.0002 -0.0000 0.0000

18 1.8294 1.8294 1.8294 -0.0000 0.0000 -0.0000

19 1.8294 1.8294 1.8294 -0.0000 0.0000 -0.0000

la raiz aproximada es: 1.8294

También podría gustarte