[an error occurred while processing this directive]
|
unsigned long mysqrt(unsigned long n)
{
unsigned long root, bit, trial;
//
root = 0;
bit = (n >= 0x10000L) ? 1L<<30 : 1<<14;
do
{
trial = root+bit;
if (n >= trial)
{
n -= trial;
root = trial+bit;
}
root >>= 1;
bit >>= 2;
}
while (bit);
return root;
} // mysqrt
но все равно медленно
E-mail: info@telesys.ru