alternativ eine Lualösung:
Lualösung, die auch bei großen Werten funktioniert:
\documentclass{scrartcl}
\usepackage{luacode}
\begin{luacode}
function Wurzel(x)
local y=math.sqrt(x)
if y == math.ceil(y)
then tex.print(y) else tex.print("\\sqrt{"..tostring(x).."}") tex.print("\\sqrt{"..x.."}")
end
end
\end{luacode}
\newcommand\Wurzel[1]{\ensuremath{\directlua{ Wurzel(#1) }}}
\begin{document}
\Wurzel{100} und \Wurzel{10};
\Wurzel{1000000} und \Wurzel{100000}
\end{document}
![alt text][1]
[1]: http://texwelt.de/wissen/upfiles/Bildschirmfoto_vom_2015-07-08_08:20:43.png