To round number to nearest 10, use round[] function. We can divide the value by 10, round the result to zero precision, and multiply with 10 again. Or you can pass a negative value for precision. The negative denotes that rounding happens to the left of the decimal point. In this tutorial, we will write Python programs to round a number to its nearest 10 or 100. For example, if the number is 3652, then its nearest number to
10 is 3650. And the nearest 100 is 3700.Python – Round Number to Nearest 10
Example 1 – Round Number to Nearest 10 using round[]
In this example, we will read a number from user, and round the value to its nearest 10 using round[] function.
Python Program
number = int[input['Enter a number :']] rounded = round[number/10]*10 print['Rounded Number :', rounded]
Output
Enter a number :3652 Rounded Number : 3650
Or you can also provide a negative number as the second argument for round[] function, to round to those number of digits before decimal point.
Python Program
number = int[input['Enter a number :']] rounded = round[number, -1] print['Rounded Number :', rounded]
Output
Enter a number :3652 Rounded Number : 3650
Example 2 – Round Number to Nearest 100 using round[]
In this example, we will round the number to its nearest 100 using round[] function.
Python Program
number = int[input['Enter a number :']] rounded = round[number/100]*100 print['Rounded Number :', rounded]
Output
Enter a number :3652 Rounded Number : 3700
Or you can also provide a negative number as the second argument for round[] function, to round to those number of digits before decimal point. To round to nearest 100, we need to provide -2 as second argument to round[].
Python Program
number = int[input['Enter a number :']] rounded = round[number, -2] print['Rounded Number :', rounded]
Output
Enter a number :3652 Rounded Number : 3700
Conclusion
Concluding this Python Tutorial, we learned how to use round[] function to round a number to nearest 10 or 100. You can use the same process to find the nearest number to any digit before the decimal point.
Is there a function in Python that allows me to round down to the nearest multiple of an integer?
round_down[19,10]=10
round_down[19,5]=15
round_down[10,10]=10
I conscientiously looked at SO and found nothing related to rounding down to a nearest base. Please keep this in mind before you post links to related questions or flag as duplicate.
asked Oct 26, 2012 at 7:32
The Unfun CatThe Unfun Cat
27.8k25 gold badges104 silver badges146 bronze badges
4
def round_down[num, divisor]:
return num - [num%divisor]
In [2]: round_down[19,10]
Out[2]: 10
In [3]: round_down[19,5]
Out[3]: 15
In [4]: round_down[10,10]
Out[4]: 10
answered Oct 26, 2012 at 7:33
inspectorG4dgetinspectorG4dget
106k25 gold badges137 silver badges234 bronze badges
This probably isn't the most efficient solution, but
def round_down[m, n]:
return m // n * n
is pretty simple.
MisterMiyagi
39.2k10 gold badges88 silver badges102 bronze badges
answered Aug 5, 2021 at 1:42
1
I ended up doing the following when in the same situation, making use of the floor
function. In my case I was trying to round numbers down to nearest 1000.
from math import floor
def round_down[num, divisor]:
return floor[num / divisor] * divisor
Could do a similar thing with ceil
if you wanted to define a corresponding always-round-up function as well[?]
answered Sep 19, 2018 at 15:47
2