(*costanti arbitrarie*)
const
   precisione_max=5;
   radice_max=100;

(*calcola la n-esima radice di a*)
function radice(a:real;n:integer):real;
var
   i,precisione:integer;
   x:real;
begin
   x:=0;
   for precisione:=0 downto -precisione_max do
   begin
      for i:=0 to 9 do
         if potenza(x+potenza(10,precisione)*i,n) > a then break;
      dec(i);
      x:=x+potenza(10,precisione)*i;
   end;
   radice:=x;
end;