CellPrint[TextCell[Quiet[Manipulate[If[ToString[Criterio]≠ToString[Null],If[!StringContainsQ[ToString[g[x]],"If"]&&!StringContainsQ[ToString[g[x]],"I"],If[NumericQ[g[Quiet[w/.Quiet[FindInstance[Quiet[FunctionDomain[g[w],w]],{w},Reals][[1]]]]]],If[VectorQ[{vp0,n},NumericQ],Steffensen[vp0,n],Text[Style["Error en los datos",12]]],Text[Style["Error en los datos",12]]],Text[Style["Error en los datos",12]]],Text[Style["Error en los datos",12]]],Style["Propósito: implementa el método de Steffensen.",Bold,10],Spacer[{400,2}],{{Criterio,1/x,"g(x)="}},Delimiter,{{vp0,2,"Valor de (Subscript[p, 0])"}},{{n,3,"Iteraciones"}},Delimiter,Button["Cambiar función",CrearFuncion[{Criterio}]],Alignment->Center,Deployed->False,AppearanceElements->"ResetButton",LocalizeVariables->True,ContinuousAction->True,ControlPlacement->Top,FrameLabel->{{None,None},{Column[{,Row[{Style["Autores: Juan Félix Ávila Herrera y Enrique Vílchez Quesada",Bold,10,RGBColor[0,0,0.5]]}],Row[{Style["Escuela de Informática | Universidad Nacional de Costa Rica",Bold,10,RGBColor[0.5,0.1,0]]}]},Center],Style["Método de Steffensen", Bold,14, RGBColor[0,0.33,0.33]]}},Initialization:>(Clear[VariableFuncioni,f,CrearFuncion,w,Steffensen];CrearFuncion[f_List]:=Module[{FuncionVariable},FuncionVariable[FuncionVariable_List]:=Module[{FuncionVariableAuxiliar,Simbolos,VariableAuxiliarSimbolos,VariableAuxiliarVariables={}},FuncionVariableAuxiliar[]:=FuncionVariable[[1]];Simbolos[VariableFuncion_]:=DeleteDuplicates[Cases[DownValues[VariableFuncion],_Symbol,Infinity]];VariableAuxiliarSimbolos=Sort[Simbolos[FuncionVariableAuxiliar]];For[VariableFuncioni=1,VariableFuncioni≤Length[VariableAuxiliarSimbolos],If[NumericQ[VariableAuxiliarSimbolos[[VariableFuncioni]]]==False,VariableAuxiliarVariables=Append[VariableAuxiliarVariables,VariableAuxiliarSimbolos[[VariableFuncioni]]]];VariableFuncioni++];VariableAuxiliarVariables];Clear[g,x,Ra];g[Ra_]:= Quiet[Evaluate[First[f]]/.Select[FuncionVariable[f],ToString[#]==ToString[x]&][[1]]->Ra]];CrearFuncion[{Criterio}];Steffensen[pv0_,n_]:=Quiet[If[n>=0,Module[{p0=pv0,p1,p2,pk,vecIteraciones={},Steffi,Aitken},Aitken[Aitx_,Aity_,Aitz_]:=Aitx-(((Aity-Aitx)^2)/(Aitz-2Aity+Aitx));For[Steffi=0,Steffi<=n,p1=g[p0];p2=g[p1];pk=Aitken[p0,p1,p2];vecIteraciones=Append[vecIteraciones,{Steffi,p0//N,p1//N,p2//N,pk//N,g[pk]//N}];p0=pk;Steffi++];Style[Grid[Join[{{"k","(Subscript[p, 0])","(Subscript[p, 1])","(Subscript[p, 2])","(Subscript[(OverTilde[p]), k])","g((Subscript[(OverTilde[p]), k]))"}},vecIteraciones],Frame-> All,Alignment->Left],11]],Style["NaD",11]]])]],"Text"]]