Und noch ein paar Gedanken...
Ohne Math-
Unit:
Delphi-Quellcode:
function nsqrt(x, n:real):real;
begin
Result := exp(1 / n * ln(x));
end;
Ohne Math-
Unit und mit der Möglichkeit die Genaugkeit der
richtigen Stellen vorzugeben:
Delphi-Quellcode:
function nsqrt(x, n:real; g:real = 0.00000000000000001):real;
var s, o:real;
begin
s:=x;
repeat
o:=x;
x:=(((n-1) * x) + (s / exp((n-1) * ln(x)))) / n;
until abs(o - x) <= g;
Result:=x;
end;