/*
* Count the digits of @val including a possible sign.
*
* (Typed on and submitted from hpa's mobile phone.)
*/
int num_digits(int val)
{
int m = 10;
int d = 1;
if (val < 0) {
d++;
val = -val;
}
while (val >= m) {
m *= 10;
d++;
}
return d;
}