cdf =Manipulate[Column[{ SuFunc[ff, aa, yy0, nn]}],Style[escriba@proposito,Bold,10],Spacer[{100,3}],
 (*Inicio contadores *)
 {{f,5t+3y,"f = "},ControlType->InputField},
{{a,2,"a = "},ControlType->InputField},
{{y0,1,"y(a) = "},ControlType->InputField},
{{b,3,"b = "},ControlType->InputField},
{{n,2,"n = "},ControlType->InputField},
Button["OK", ff=f; aa=a; yy0=y0; nn=n]
(* Fin contadores *)
,Alignment->Center,Deployed->True,AppearanceElements->"ResetButton",LocalizeVariables->True,ContinuousAction->False,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["Título: Método de Euler para EDO.", Bold,14, RGBColor[0,0.33,0.33]]}},
Initialization:>(
ClearAll["Global`*"];
 ff=f; aa=a; yy0=y0; nn=n;
escriba[lista_]:=Style[Row@lista,Black];
($PreRead=(#/. s_String/;StringMatchQ[s,NumberString]&&Precision@ToExpression@s==MachinePrecision:>s<>"`12."&));
proposito ={"Propósito: Usar el método de Euler para aproximar\nla solución de la EDO y'=f(t, y)",  ", y(a)=", (Subscript[y, 0]),  ", con ", "a≤ t≤ b.\nSe usa h =((b - a)/n)"};
SuFunc[f_, a_, y0_, n_] := Module[{r={},  ww=a, h =((b-a)/n), pts={}, pol},  
g[p_, q_] := f/.{t-> p, y-> q};
r ={"h = ", N@h, "\n"};
ww= y0; 
pts ={{a, y0}};
Do[
ww  = ww+ h *g[a+i*h, ww]+0.;
pts =Join[pts, {{a+(i+1)*h, ww}}];
(*r =Join[r, {(Subscript[w, i+1])," = ", ww, "\n"}];*)
, {i, 0, n-1}];
pol = Expand@ InterpolatingPolynomial[pts,t];
 r= Join[r,{Grid[Transpose@N@pts, Frame->All], "\n"}]; 
  r= Join[r,{"Polinomio interpolante:\n", "P(t) =", pol}];  
escriba@r
];

)]
(*CloudDeploy[cdf, Permissions->"Public"]*)