# test float formatting

# general rounding
for val in (116, 1111, 1234, 5010, 11111):
    print("%.0f" % val)
    print("%.1f" % val)
    print("%.3f" % val)

# make sure rounding is done at the correct precision
for prec in range(8):
    print(("%%.%df" % prec) % 6e-5)

# check certain cases that had a digit value of 10 render as a ":" character
print("%.2e" % float("9" * 51 + "e-39"))
print("%.2e" % float("9" * 40 + "e-21"))

# check a case that would render negative digit values, eg ")" characters
# the string is converted back to a float to check for no illegal characters
float("%.23e" % 1e-80)