Ingeniera Elctrica
Mtodos Numricos
MC. Mario Alberto de la Cruz Padilla
Despus de esto se mostrara en pantalla la grfica de dicha funcin. Ser necesario detectar un punto de corte de la grfica en el eje x (visualizar una posible raz).
Posteriormente le solicitara un valor a la derecha del punto de corte. En ambos casos la grfica se proporcion con el fin de que se elijan valores adecuados.
En seguida se mostrara un men con dos opciones, esto para detener el proceso al alcanzar cierto porcentaje de error o por el nmero de iteraciones que el usuario desee.
Deber elegir una de estas dos opciones: Al teclear 1 la raz se aproximar por cierto porcentaje de error, y tecleando 2 se calcular por cierto nmero de iteraciones.
Si se elige la opcin 1 el programa le pedir introducir un porcentaje de error deseado. Al llegar a este porcentaje el programa detendr las operaciones y mostrara en pantalla una tabla de los clculos realizados por este mtodo y debajo de sta una aproximacin de la raz.
Si se elige la opcin 2 el programa solicitara el nmero de iteraciones que desea realizar para obtener la raz.
Al final del proceso, el programa solicitar que se elija una opcin: si desea calcular la raz de otra ecuacin debe elegir la opcin 1, de lo contrario elegir 2 para salir y regresar a la pantalla de comandos.
else clc; clear all close all; break end case 2 n=input('\n\nNmero de iteraciones: '); ni=0; fprintf('\n ::::::::::::::: TABLA ::::::::::::::: \n'); fprintf('\n Iteracin x0 xm x1 f(x0) f(x1) Error \n\n'); for i=1:n+1 xm=(x0+x1)/2; x=x0; fx0=eval(f); x=x1; fx1=eval(f); x=xm; fxm=eval(f); et=abs((x1-x0)/x1)*100; disp([ni,x0,xm,x1,fx0,fxm,fx1,et]) if fx0*fxm<0 x1=xm; end if fx0*fxm>0 x0=xm; end ni=ni+1; if ni==n fprintf('\n>>> La raz aproximada es: \n'); fprintf(' x= %d\n\n',xm); break end end m=input('Desea calcular la raiz de otra ecuacin, si(1) no(2);'); if(m==1); clc; clear all; close all; BISECCION else clc; clear all close all; break end otherwise fprintf ('\n\nOpcin no vlida, VUELVA A CORRER EL PROGRAMA!!!\n\n'); end
f(xm)