>>77
超いい加減な数値でよければ

double damelog(double x)
{
double tmp;
int i;

for(i=0,tmp=x;tmp>=2.0;i++,tmp*=0.5);
if(i==0) for(i=0;tmp<=0.5;i--,tmp*=2.0);

return i*0.3010;
}