formatPercent
Formats this fraction as a percentage string, so 0.42.formatPercent() is "42%".
The receiver is multiplied by 100 and formatted with Double.formatDecimals, so rounding is half-up with ties away from zero, the separator is '.', and IllegalArgumentException is thrown when decimals is outside 0..15 or the scaled magnitude exceeds Long.MAX_VALUE. A trailing '%' is appended.