From 922c2e18cf3d5f14d7a54f3429c87cc74cc22f06 Mon Sep 17 00:00:00 2001 From: kvadrik <41710943+kvadrik@users.noreply.github.com> Date: Tue, 24 Mar 2026 14:19:15 +0200 Subject: [PATCH 1/6] Implement volume calculation for ellipsoid Added a method to calculate the volume of an ellipsoid. --- src/main/java/com/thealgorithms/maths/Volume.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/main/java/com/thealgorithms/maths/Volume.java b/src/main/java/com/thealgorithms/maths/Volume.java index c0898c5424a0..7633b2bfdb0f 100644 --- a/src/main/java/com/thealgorithms/maths/Volume.java +++ b/src/main/java/com/thealgorithms/maths/Volume.java @@ -125,4 +125,16 @@ public static double volumeFrustumOfPyramid(double upperBaseArea, double lowerBa public static double volumeTorus(double majorRadius, double minorRadius) { return 2 * Math.PI * Math.PI * majorRadius * minorRadius * minorRadius; } + + + /** + * Calculate the volume of an ellipsoid. + * + * @param a first semi-axis of an ellipsoid + * @param b second semi-axis of an ellipsoid + * @param c third semi-axis of an ellipsoid + * @return volume of the ellipsoid + */ + public static double volumeEllipsoid(double a, double b, double c) + return 4 / 3 * Math.PI * a * b * c; } From 31f4cff70b60227d01d65e53ae3d8b2ffc482dca Mon Sep 17 00:00:00 2001 From: kvadrik <41710943+kvadrik@users.noreply.github.com> Date: Tue, 24 Mar 2026 14:31:02 +0200 Subject: [PATCH 2/6] Add test for volume of ellipsoid --- src/test/java/com/thealgorithms/maths/VolumeTest.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/test/java/com/thealgorithms/maths/VolumeTest.java b/src/test/java/com/thealgorithms/maths/VolumeTest.java index c159d7566b46..95cc043b731e 100644 --- a/src/test/java/com/thealgorithms/maths/VolumeTest.java +++ b/src/test/java/com/thealgorithms/maths/VolumeTest.java @@ -41,5 +41,8 @@ public void volume() { /* test torus */ assertEquals(39.47841760435743, Volume.volumeTorus(2, 1)); + + /* test ellipsoid */ + assertEquals(25.13274122871835, Volume.volumeEllipsoid(3, 2, 1)); } } From d2ef29fb5d59edf2589545015912e71f258fe8b2 Mon Sep 17 00:00:00 2001 From: kvadrik <41710943+kvadrik@users.noreply.github.com> Date: Tue, 24 Mar 2026 14:33:51 +0200 Subject: [PATCH 3/6] Fix formatting of volumeEllipsoid method --- src/main/java/com/thealgorithms/maths/Volume.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/thealgorithms/maths/Volume.java b/src/main/java/com/thealgorithms/maths/Volume.java index 7633b2bfdb0f..adad1dfe78b4 100644 --- a/src/main/java/com/thealgorithms/maths/Volume.java +++ b/src/main/java/com/thealgorithms/maths/Volume.java @@ -135,6 +135,7 @@ public static double volumeTorus(double majorRadius, double minorRadius) { * @param c third semi-axis of an ellipsoid * @return volume of the ellipsoid */ - public static double volumeEllipsoid(double a, double b, double c) + public static double volumeEllipsoid(double a, double b, double c) { return 4 / 3 * Math.PI * a * b * c; + } } From eb51abd41d44dee68cc535ab5851681e9e0d88f6 Mon Sep 17 00:00:00 2001 From: kvadrik <41710943+kvadrik@users.noreply.github.com> Date: Tue, 24 Mar 2026 15:15:56 +0200 Subject: [PATCH 4/6] Update Volume.java --- src/main/java/com/thealgorithms/maths/Volume.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/com/thealgorithms/maths/Volume.java b/src/main/java/com/thealgorithms/maths/Volume.java index adad1dfe78b4..517016d5d69a 100644 --- a/src/main/java/com/thealgorithms/maths/Volume.java +++ b/src/main/java/com/thealgorithms/maths/Volume.java @@ -136,6 +136,6 @@ public static double volumeTorus(double majorRadius, double minorRadius) { * @return volume of the ellipsoid */ public static double volumeEllipsoid(double a, double b, double c) { - return 4 / 3 * Math.PI * a * b * c; + return (4 * Math.PI * a * b * c) / 3; } } From 37e22e9779befe8310540c70c136389a4263c752 Mon Sep 17 00:00:00 2001 From: kvadrik <41710943+kvadrik@users.noreply.github.com> Date: Tue, 24 Mar 2026 16:48:02 +0200 Subject: [PATCH 5/6] Fix precision in ellipsoid volume test --- src/test/java/com/thealgorithms/maths/VolumeTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/java/com/thealgorithms/maths/VolumeTest.java b/src/test/java/com/thealgorithms/maths/VolumeTest.java index 95cc043b731e..c0b02d6ba28e 100644 --- a/src/test/java/com/thealgorithms/maths/VolumeTest.java +++ b/src/test/java/com/thealgorithms/maths/VolumeTest.java @@ -43,6 +43,6 @@ public void volume() { assertEquals(39.47841760435743, Volume.volumeTorus(2, 1)); /* test ellipsoid */ - assertEquals(25.13274122871835, Volume.volumeEllipsoid(3, 2, 1)); + assertEquals(25.1327412287183459, Volume.volumeEllipsoid(3, 2, 1)); } } From 8f886cc190efc7d628fa335a97178a8c0b72401a Mon Sep 17 00:00:00 2001 From: kvadrik <41710943+kvadrik@users.noreply.github.com> Date: Tue, 24 Mar 2026 16:53:41 +0200 Subject: [PATCH 6/6] Fix formatting of ellipsoid volume method documentation --- src/main/java/com/thealgorithms/maths/Volume.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/main/java/com/thealgorithms/maths/Volume.java b/src/main/java/com/thealgorithms/maths/Volume.java index 517016d5d69a..488b921cae83 100644 --- a/src/main/java/com/thealgorithms/maths/Volume.java +++ b/src/main/java/com/thealgorithms/maths/Volume.java @@ -126,7 +126,6 @@ public static double volumeTorus(double majorRadius, double minorRadius) { return 2 * Math.PI * Math.PI * majorRadius * minorRadius * minorRadius; } - /** * Calculate the volume of an ellipsoid. * @@ -134,7 +133,7 @@ public static double volumeTorus(double majorRadius, double minorRadius) { * @param b second semi-axis of an ellipsoid * @param c third semi-axis of an ellipsoid * @return volume of the ellipsoid - */ + */ public static double volumeEllipsoid(double a, double b, double c) { return (4 * Math.PI * a * b * c) / 3; }