I have created a code in Wolfram Mathematica. I want it to be CDF file. I selected File-> CDF Export -> Standalone. I was told that the file doesn't work. I think it is because of InputField. It has to work for all functions.
Clear[f, der1]
Manipulate[Grid
[{{Column
[{Row[{Framed[Style["Functions", Bold, White, 25],
Background -> Red, RoundingRadius -> 1
]}]}]},
{Column
[{
Row[{"Type the function: ",
InputField[Dynamic[f], Background -> LightYellow]}],
Row[{"Domain: ",
dom = Simplify[FunctionDomain[f, x, Reals]]}],
Row[{"Range: ", FunctionRange[f, x, y]}],
Row[{"f[0] ", f /. x -> 0}],
Row[{"f[x]=0 ", Simplify[x /. Solve[f == 0, x, Reals]]}],
Row[{"First derivative ", der1 = Simplify[D[f, x]]}],
Row[{"Second derivative ", der2 = Simplify[D[f, x, x]]}],
Row[{"First derivative = 0 ",
zeder = Solve[der1 == 0, x ]}],
Row[{"Function is increasing: ", Reduce[der1 > 0, x]}],
Row[{"Function is decreasing: ", Reduce[der1 < 0, x]}],
Row[{"Points of discontinuity: ",
dis = Solve[Denominator[Together[f]] == 0, Reals]}],
Row[{"First derivative - points of discontinuity: ",
noder = Solve[Denominator[Together[der1]] == 0, Reals]}],
Row[{"Extrema: ",
extr = Union[
Sort[Join[{axisxfrom}, {axisxto}, {zeder}, {noder}, \
{dis}]]]}],
Row[{"Maximal values ",
Maximize[{f, axisxfrom <= x <= axisxto}, x]}],
Row[{"Minimal values: ",
Minimize[{f, axisxfrom <= x <= axisxto}, x]}],
Row[{"Function is convex ", Reduce[der2 > 0, x]}],
Row[{"Function is concave ", Reduce[der2 < 0, x]}],
Plot[f, {x, axisxfrom, axisxto},
PlotRange -> {axisyfrom, axisyto}, Background -> LightGreen]
}]}}],
{axisxfrom, -5}, {axisxto, 5}, {axisyfrom, -2}, {axisyto, 2}]