๐ŸŒ
W3Schools
w3schools.com โ€บ java โ€บ ref_math_ceil.asp
Java Math ceil() Method
Java Examples Java Videos Java Compiler Java Exercises Java Quiz Java Code Challenges Java Server Java Syllabus Java Study Plan Java Interview Q&A Java Certificate ... System.out.println(Math.ceil(0.60)); System.out.println(Math.ceil(0.40)); System.out.println(Math.ceil(5)); System.out.println(Math.ceil(5.1)); System.out.println(Math.ceil(-5.1)); System.out.println(Math.ceil(-5.9));
๐ŸŒ
W3Schools
w3schools.com โ€บ java โ€บ java_math.asp
Java Math
Java has several methods for rounding numbers: Math.round(x) - rounds to the nearest integer ยท Math.ceil(x) - rounds up (returns the smallest integer greater than or equal to x) Math.floor(x) - rounds down (returns the largest integer less ...
๐ŸŒ
Programiz
programiz.com โ€บ java-programming โ€บ library โ€บ math โ€บ ceil
Java Math ceil()
In this tutorial, we will learn about the Java Math.ceil() method with the help of examples. In this tutorial, we will learn about Math.ceil() with the help of examples.
๐ŸŒ
Codecademy
codecademy.com โ€บ docs โ€บ java โ€บ math methods โ€บ .ceil()
Java | Math Methods | .ceil() | Codecademy
December 12, 2022 - The Math.ceil() method returns the double value that is a mathematical integer and is greater than or equal to the original value. ... Looking for an introduction to the theory behind programming?
๐ŸŒ
W3Schools
w3schools.com โ€บ python โ€บ ref_math_ceil.asp
Python math.ceil() Method
The math.ceil() method rounds a number UP to the nearest integer, if necessary, and returns the result.
๐ŸŒ
W3Schools
w3schools.com โ€บ java โ€บ tryjava.asp
W3Schools online JAVA editor
The W3Schools online code editor allows you to edit code and view the result in your browser
๐ŸŒ
Tutorialspoint
tutorialspoint.com โ€บ home โ€บ java/lang โ€บ java math ceil() method
Java Math ceil() Method
September 1, 2008 - The Java Math ceil(double a) returns the smallest (closest to negative infinity) double value that is greater than or equal to the argument and is equal to a mathematical integer.
๐ŸŒ
W3Schools
w3schools.com โ€บ java โ€บ java_ref_math.asp
Java Math Reference
charAt() codePointAt() codePointBefore() codePointCount() compareTo() compareToIgnoreCase() concat() contains() contentEquals() copyValueOf() endsWith() equals() equalsIgnoreCase() format() getBytes() getChars() hashCode() indexOf() isEmpty() join() lastIndexOf() length() matches() offsetByCodePoints() regionMatches() replace() replaceAll() replaceFirst() split() startsWith() subSequence() substring() toCharArray() toLowerCase() toString() toUpperCase() trim() valueOf() Java Math Methods ยท abs() acos() addExact() asin() atan() atan2() cbrt() ceil() copySign() cos() cosh() decrementExact() exp
๐ŸŒ
Guru99
guru99.com โ€บ home โ€บ java tutorials โ€บ java math โ€“ ceil() floor() methods
Java Math โ€“ ceil() Floor() Methods
September 20, 2024 - Java Math Class provides useful methods for performing the mathโ€™s operations like exponential, logarithm, roots and trigonometric equations too. This tutorial teaches Java Math Class with examples.
Find elsewhere
๐ŸŒ
BeginnersBook
beginnersbook.com โ€บ 2022 โ€บ 10 โ€บ java-math-ceil-method
Java Math.ceil() Method
public class JavaExample { public static void main(String[] args) { double n1 = 5.0/0; //positive infinity double n2 = -5.0/0; //negative infinity System.out.println(Math.ceil(n1)); System.out.println(Math.ceil(n2)); } }
Top answer
1 of 15
246

You are doing 157/32 which is dividing two integers with each other, which always result in a rounded down integer. Therefore the (int) Math.ceil(...) isn't doing anything. There are three possible solutions to achieve what you want. I recommend using either option 1 or option 2. Please do NOT use option 0.

Option 0

Convert a and b to a double, and you can use the division and Math.ceil as you wanted it to work. However I strongly discourage the use of this approach, because double division can be imprecise. To read more about imprecision of doubles see this question.

int n = (int) Math.ceil((double) a / b));

Option 1

int n = a / b + ((a % b == 0) ? 0 : 1); 

You do a / b with always floor if a and b are both integers. Then you have an inline if-statement which checks whether or not you should ceil instead of floor. So +1 or +0, if there is a remainder with the division you need +1. a % b == 0 checks for the remainder.

Option 2

This option is very short, but maybe for some less intuitive. I think this less intuitive approach would be faster than the double division and comparison approach:
Please note that this doesn't work for b < 0.

int n = (a + b - 1) / b;

To reduce the chance of overflow you could use the following. However please note that it doesn't work for a = 0 and b < 1.

int n = (a - 1) / b + 1;

Explanation behind the "less intuitive approach"

Since dividing two integers in Java (and most other programming languages) will always floor the result. So:

int a, b;
int result = a/b (is the same as floor(a/b) )

But we don't want floor(a/b), but ceil(a/b), and using the definitions and plots from Wikipedia:

With these plots of the floor and ceil functions, you can see the relationship.

You can see that floor(x) <= ceil(x). We need floor(x + s) = ceil(x). So we need to find s. If we take 1/2 <= s < 1 it will be just right (try some numbers and you will see it does, I find it hard myself to prove this). And 1/2 <= (b-1) / b < 1, so

ceil(a/b) = floor(a/b + s)
          = floor(a/b + (b-1)/b)
          = floor( (a+b-1)/b) )

This is not a real proof, but I hope you're satisfied with it. If someone can explain it better I would appreciate it too. Maybe ask it on MathOverflow.

2 of 15
62

157/32 is int/int, which results in an int.

Try using the double literal - 157/32d, which is int/double, which results in a double.

๐ŸŒ
GeeksforGeeks
geeksforgeeks.org โ€บ java โ€บ java-ceil-method-examples
Java ceil() method with Examples - GeeksforGeeks
April 7, 2018 - The Math class is used to access the ceil() method. Variable a holds a positive decimal value, which is rounded up to the next integer. Variable b represents positive infinity, so the result remains infinity.
๐ŸŒ
W3Schools
w3schools.com โ€บ c โ€บ ref_math_ceil.php
C Math ceil() Function
The ceil() function rounds a number UP to the nearest integer.
๐ŸŒ
Javatpoint
javatpoint.com โ€บ java-math-ceil-method
Java Math.ceil() method with Examples - Javatpoint
Java CopyOnWriteArrayList ยท indexOf() lastIndexOf() clone() toArray() Math.abs() Math.max() Math.min() Math.round() Math.sqrt() Math.cbrt() Math.pow() Math.signum() Math.ceil() Math.copySign() Math.nextAfter() Math.nextUp() Math.nextDown() Math.floor() Math.floorDiv() Math.random() Math.rint() Math.hypot() Math.ulp() Math.getExponent() Math.IEEEremainder() Math.addExact() Math.subtractExact() Math.multiplyExact() Math.incrementExact() Math.decrementExact() Math.negateExact() Math.toIntExact() Math.log() Math.log10() Math.log1p() Math.exp() Math.expm1() Math.sin() Math.cos() Math.tan() Math.asin() Math.acos() Math.atan() Math.sinh() Math.cosh() Math.tanh() Math.toDegrees ยท
๐ŸŒ
W3Schools
w3schoolsua.github.io โ€บ java โ€บ java_ref_math_en.html
Java Math Methods. Lessons for beginners. W3Schools in English
All Math Methods in Java. The Java Math class has many methods that allows you to perform mathematical tasks on numbers. All Math methods are static. Lessons for beginners. W3Schools in English
๐ŸŒ
Educative
educative.io โ€บ answers โ€บ what-is-mathceil-in-java
What is Math.ceil() in Java?
The ceil() function returns the nearest smallest double value that is greater than or equal to a number. Figure 1 shows the mathematical representation of the ceil() function.
๐ŸŒ
Scaler
scaler.com โ€บ home โ€บ topics โ€บ math.ceil() in java
Math.ceil() in Java - Scaler Topics
May 5, 2024 - If the input parameter is less than 0 but greater than -1, ceil function will return -0.0 as output. ... Math.ceil() take a double value as a parameter.
๐ŸŒ
CodeAhoy
codeahoy.com โ€บ java โ€บ Math-Ceil-method-JI_15
Java Math.ceil() Method with Examples | CodeAhoy
October 12, 2019 - Learn how to use Math.ceil() method to calculate ceiling of any number.
๐ŸŒ
Java Guides
javaguides.net โ€บ 2023 โ€บ 09 โ€บ java-math-ceil-example.html
Java Math ceil() example
September 26, 2023 - public class CeilExample { public static void main(String[] args) { double[] values = {42.1, 42.7, -42.1, -42.7}; for (double value : values) { // Calculate the ceiling value double ceilValue = Math.ceil(value); System.out.println("Ceiling value ...
๐ŸŒ
Tutorial Gateway
tutorialgateway.org โ€บ java-ceil-function
Java ceil Function
March 25, 2025 - In this math ceil example, we declared an Array of double types and assigned some random values. double [] CeilArray = {10.46, -15.98, 22.44, 95.9999, -4.8799, 12.8597}; Next, We used Java For Loop to iterate the Array. Within the For Loop, we initialized the i as 0.