in reply to Re^3: Round up 3 values to the next 100
in thread Round up 3 values to the next 100

If you tested that you might be surprised at what it actually does. I'll give you a hint: what does if ( !$var eq '00' ) really mean? (See perlop and look at the table of precedence...)

The negation (!) operator binds tighter than the 'eq' operator, so the condition actually parses as
if( (!$var) eq '00' )
(you can confirm this yourself with B::Deparse). You should have used parentheses, the 'ne' operator, or skipped the string comparison altogether and just used the modulus operator in conjunction with a numeric 'not equals':
if( $var % 100 != 0 )

You might also want to specify how negative numbers should be rounded. If -12345 should round to -12300, my solution will work but the approach you outlined will produce different results.