Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Round up to nearest power of 10

I'm trying to figure out how to round up a number (greater than 0) to the nearest power of 10.

Examples:

roundUp(23.4) = 100
roundUp(2.34) = 10
roundUp(.234) = 1
roundUp(0.0234) = 0.1
roundUp(0.00234) = 0.01

For numbers greater than 1, I believe this works:

10^(ceil(log10(x)))

But for numbers between 0 and 1, I'm not sure how to arrive at the answer.

like image 855
accelerate Avatar asked Nov 08 '13 23:11

accelerate


1 Answers

Oops. I didn't realize the function actually DOES work for numbers between 0 & 1. It was a brain fart that I saw a negative number for log10(x) and just assumed I couldn't take 10^ of that.

Carry on.

like image 124
accelerate Avatar answered Nov 22 '22 11:11

accelerate