in reply to Re^4: Portability of floor(log(N))
in thread Portability of floor(log(N))

Using POSIX::log10() looks like the simplest solution. I will attempt to pester the tester with a modified version of

Do you think I can simplify it by replacing POSIX::log10(1000) with 3, or will it be better to keep your code as-is?

my $e = floor( POSIX::log10($num) / 3 );

Replies are listed 'Best First'.
Re^6: Portability of floor(log(N))
by pryrt (Monsignor) on Mar 14, 2018 at 18:22 UTC

    log10(1000) will never change, and is exactly 3, so there's no reason not to use it