continuación tendrán que seguir los siguientes comandos usados en cada caso.
function btnCalcular_Callback(hObject, eventdata, handles)
try
funcion=get(handles.txtFuncion,'string');
x0=str2double(get(handles.txtX0,'string'));
porcentajeError=str2double(get(handles.txtPorcentajeError,'string'));
syms x
iteracion=0;
errorCalculado=100;
f=sym(funcion);
derivada=diff(f,x);
set(handles.tabla,'Data',{})
if derivada==0
hold off
cla
set(handles.tabla,'Data',{})
set(handles.txtRaiz,'string','No hay raiz');
else
while errorCalculado>porcentajeError
fx=subs(f,x0);
dx=subs(derivada,x0);
x1=x0-(fx/dx);
errorCalculado=abs(((x1-x0)/x1)*100);
%mostrar datos en tabla
newRow ={iteracion x0 errorCalculado};
oldData = get(handles.tabla,'Data');
newData=[oldData; newRow];
set(handles.tabla,'Data',newData)
x0=x1;
iteracion=iteracion+1;
end
respuesta=sprintf('%0.16f',x1);
set(handles.txtRaiz,'string',respuesta);
%Grafica de la funcion
hold off
handles.axes1=ezplot(f);
grid on;
hold on;
zoom on
end
catch
msgbox('Un error ha ocurrido. Verifique que ha introducido todos los datos y de la forma adecuada','Error','error')
end
function btnLimpiar_Callback(hObject, eventdata, handles)
%limpiar area de grafico
cla
%limpiar tabla
set(handles.tabla,'Data',{})
%limpiar textboxs
set(handles.txtFuncion,'string','');
set(handles.txtX0,'string','');
set(handles.txtPorcentajeError,'string','');
set(handles.txtRaiz,'string','');
hola..
ResponderEliminaral momento de calcular no pasa nada ni grafica ni saca la raiz no se q este mal por que tampoco lanza ningun error...
hola, que versión de matlab tienes
Eliminarla version matlab v2014b
EliminarNo me sale... tengo matlab 2017 Rb
ResponderEliminarsaludos como se puede descargar
ResponderEliminar