Ich hab zwei Möglichkeiten gefunden. Möglichkeit 1 besteht darin, dass Int64-Variable in einen String und dann in den Datentyp Extended umgewandelt wird. Um anschließend die Wurzel zuziehen können.
Delphi-Quellcode:
var
code:integer;
zahl, wurzel:int64;
stri:string;
ext:extended;
stri := IntToStr(zahl);
Val(stri,ext,code);
wurzel := trunc(sqrt(ext));
Die zweite Möglichkeit baut auf dem Babylonischen Algorythmus auf.
Delphi-Quellcode:
var
zahl, wurzel:int64;
i:integer;
ext:extended;
ext := 1;
for i:=1 to 25 do
ext := (ext + (zahl/ext))/2;
wurzel := trunc(ext);
Tschau!