mirror of
https://github.com/TheAlgorithms/Java.git
synced 2025-07-24 04:54:21 +08:00
35 lines
978 B
Java
35 lines
978 B
Java
package com.thealgorithms.maths;
|
|
|
|
/**
|
|
* https://en.wikipedia.org/wiki/Cube_(algebra)
|
|
*/
|
|
public final class PerfectCube {
|
|
private PerfectCube() {
|
|
}
|
|
|
|
/**
|
|
* Check if a number is perfect cube or not
|
|
*
|
|
* @param number number to check
|
|
* @return {@code true} if {@code number} is perfect cube, otherwise
|
|
* {@code false}
|
|
*/
|
|
public static boolean isPerfectCube(int number) {
|
|
number = Math.abs(number); // converting negative number to positive number
|
|
int a = (int) Math.pow(number, 1.0 / 3);
|
|
return a * a * a == number;
|
|
}
|
|
|
|
/**
|
|
* Check if a number is perfect cube or not by using Math.cbrt function
|
|
*
|
|
* @param number number to check
|
|
* @return {@code true} if {@code number} is perfect cube, otherwise
|
|
* {@code false}
|
|
*/
|
|
public static boolean isPerfectCubeMathCbrt(int number) {
|
|
double cubeRoot = Math.cbrt(number);
|
|
return cubeRoot == (int) cubeRoot;
|
|
}
|
|
}
|