w3resource

Python Math: Round a specified number upwards towards infinity and down towards negative infinity


41. Upward and Downward Rounding with Precision

Write a Python program to round a specified number upwards towards infinity and down towards negative infinity with precision 4.

Sample Solution:

Python Code:

import decimal
context = decimal.getcontext()
value = decimal.Decimal(1) / decimal.Decimal(17)
print("1/17 = ",value)
context.prec = 4
print("Precision: ",4)

context.rounding = getattr(decimal, 'ROUND_CEILING')
value = decimal.Decimal(1) / decimal.Decimal(17)
print("Round upwards towards infinity: ",value)

context.rounding = getattr(decimal, 'ROUND_FLOOR')
value = decimal.Decimal(1) / decimal.Decimal(17)
print("Round down towards negative infinity: ",value)

Sample Output:

1/17 =  0.05882352941176470588235294118                                                                       
Precision:  4                                                                                                 
Round upwards towards infinity:  0.05883                                                                      
Round down towards negative infinity:  0.05882

Flowchart:

Flowchart: Round a specified number upwards towards infinity and down towards negative infinity

For more Practice: Solve these Related Problems:

  • Write a Python program to round a given Decimal number upward (ceil) and downward (floor) with precision 4, and then print both results.
  • Write a Python function that takes a Decimal and rounds it to 4 decimal places using both decimal.ROUND_CEILING and decimal.ROUND_FLOOR, then returns the two values.
  • Write a Python script to demonstrate the difference between rounding up and down for several Decimal values at precision 4, printing a comparison table.
  • Write a Python program to generate a list of Decimal numbers, round each upwards and downwards with precision 4, and print the original and rounded values side by side.

Python Code Editor:

Have another way to solve this solution? Contribute your code (and comments) through Disqus.

Previous: Write a Python program to round a specified decimal by setting precision (between 1 and 4).
Next: Write a Python program to get the local and default precision.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Follow us on Facebook and Twitter for latest update.