|
<?php |
|
function adjustToNearestMultipleAndSuffix($number) { |
|
|
|
$number = (int)$number; |
|
|
|
|
|
if ($number <= 10) { |
|
return $number; |
|
} |
|
|
|
|
|
$magnitude = pow(10, floor(log10($number)) + (log10($number) % 1 != 0)); |
|
|
|
|
|
$adjustedNumber = ceil($number / $magnitude) * $magnitude; |
|
|
|
|
|
|
|
$suffixValue = $adjustedNumber - $number; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return $adjustedNumber . '+'; |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
function adjustAndSuffix($number) { |
|
$number = (int)$number; |
|
if ($number <= 10) { |
|
return $number; |
|
} |
|
|
|
$magnitude = pow(10, floor(log10($number)) + 1 - ($number % 10 == 0)); |
|
|
|
$magnitude = pow(10, ceil(log10($number)) - ($number % pow(10, ceil(log10($number)) - floor(log10($number))) == 0 ? 0 : 1)); |
|
|
|
$magnitude = 1; |
|
while ($number > $magnitude * 10 - 1) { |
|
$magnitude *= 10; |
|
} |
|
if ($number % $magnitude == 0) { |
|
|
|
|
|
} else { |
|
|
|
$number = ceil($number / $magnitude) * $magnitude; |
|
} |
|
|
|
return $number . '+'; |
|
} |
|
|
|
|
|
|
|
function simplifyAdjustAndSuffix($number) { |
|
$number = (int)$number; |
|
if ($number <= 10) { |
|
return $number; |
|
} |
|
|
|
|
|
$nearestTen = ceil($number / 10) * 10; |
|
return $nearestTen . '+'; |
|
} |
|
|
|
|
|
echo simplifyAdjustAndSuffix(5); |
|
echo simplifyAdjustAndSuffix(10); |
|
echo simplifyAdjustAndSuffix(12); |
|
echo simplifyAdjustAndSuffix(55); |
|
echo simplifyAdjustAndSuffix(103); |
|
?> |