From ecf293a20d99d59af6fdc3f7b00e2057f4e3f350 Mon Sep 17 00:00:00 2001 From: Rohanrbharadwaj <89947037+Rohanrbharadwaj@users.noreply.github.com> Date: Mon, 11 Oct 2021 01:40:35 +0530 Subject: [PATCH 1/8] Update area.py --- maths/area.py | 60 ++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 59 insertions(+), 1 deletion(-) diff --git a/maths/area.py b/maths/area.py index 8689f323cc9a..6ca32f9cf93e 100644 --- a/maths/area.py +++ b/maths/area.py @@ -42,6 +42,62 @@ def surface_area_sphere(radius: float) -> float: return 4 * pi * radius ** 2 +def surface_area_cone(radius: float, height: float) -> float: + """ + Calculate the Surface Area of a Cone. + Wikipedia reference: https://en.wikipedia.org/wiki/Cone + Formula: pi * r * (r + (h^2 + r^2)^0.5) + + >>> surface_area_cone(10, 24) + 1130.9733552923256 + >>> surface_area_cone(6, 8) + 301.59289474462014 + >>> surface_area_cone(-1, -2) + Traceback (most recent call last): + ... + ValueError: surface_area_cone() only accepts non-negative values + >>> surface_area_cone(1, -2) + Traceback (most recent call last): + ... + ValueError: surface_area_cone() only accepts non-negative values + >>> surface_area_cone(-1, 2) + Traceback (most recent call last): + ... + ValueError: surface_area_cone() only accepts non-negative values + """ + if radius < 0 or height < 0: + raise ValueError("surface_area_cone() only accepts non-negative values") + return pi * radius * (radius + (height ** 2 + radius ** 2) ** 0.5) + + +def surface_area_cylinder(radius: float, height: float) -> float: + """ + Calculate the Surface Area of a Cylinder. + Wikipedia reference: https://en.wikipedia.org/wiki/Cylinder + Formula: 2 * pi * r * (h + r) + + >>> surface_area_cylinder(7, 10) + 747.6990515543707 + >>> surface_area_cylinder(6, 8) + 527.7875658030853 + >>> surface_area_cylinder(-1, -2) + Traceback (most recent call last): + ... + ValueError: surface_area_cylinder() only accepts non-negative values + >>> surface_area_cylinder(1, -2) + Traceback (most recent call last): + ... + ValueError: surface_area_cylinder() only accepts non-negative values + >>> surface_area_cylinder(-1, 2) + Traceback (most recent call last): + ... + ValueError: surface_area_cylinder() only accepts non-negative values + """ + if radius < 0 or height < 0: + raise ValueError("surface_area_cylinder() only accepts non-negative values") + return 2 * pi * radius * (height + radius) + + def area_rectangle(length: float, width: float) -> float: """ Calculate the area of a rectangle. @@ -280,9 +336,11 @@ def area_rhombus(diagonal_1: float, diagonal_2: float) -> float: print(f"Triangle: {area_triangle(10, 10) = }") print(f"Triangle: {area_triangle_three_sides(5, 12, 13) = }") print(f"Parallelogram: {area_parallelogram(10, 20) = }") + print(f"Rhombus: {area_rhombus(10, 20) = }") print(f"Trapezium: {area_trapezium(10, 20, 30) = }") print(f"Circle: {area_circle(20) = }") print("\nSurface Areas of various geometric shapes: \n") print(f"Cube: {surface_area_cube(20) = }") print(f"Sphere: {surface_area_sphere(20) = }") - print(f"Rhombus: {area_rhombus(10, 20) = }") + print(f"Cone: {surface_area_cone(10, 20) = }") + print(f"Cylinder: {surface_area_cylinder(10, 20) = }") From 0de3a2b7664119a6d134e0d4cc3bf3f1c3532d6a Mon Sep 17 00:00:00 2001 From: Rohanrbharadwaj <89947037+Rohanrbharadwaj@users.noreply.github.com> Date: Mon, 11 Oct 2021 16:30:07 +0530 Subject: [PATCH 2/8] Update area.py --- maths/area.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/maths/area.py b/maths/area.py index 6ca32f9cf93e..9a7b460e090a 100644 --- a/maths/area.py +++ b/maths/area.py @@ -46,7 +46,7 @@ def surface_area_cone(radius: float, height: float) -> float: """ Calculate the Surface Area of a Cone. Wikipedia reference: https://en.wikipedia.org/wiki/Cone - Formula: pi * r * (r + (h^2 + r^2)^0.5) + Formula: pi * r * (r + (h ** 2 + r ** 2) ** 0.5) >>> surface_area_cone(10, 24) 1130.9733552923256 From cb426ab60244df3abd61630f4ac8fabe240a1cfd Mon Sep 17 00:00:00 2001 From: Rohanrbharadwaj <89947037+Rohanrbharadwaj@users.noreply.github.com> Date: Mon, 11 Oct 2021 16:52:38 +0530 Subject: [PATCH 3/8] Update area.py --- maths/area.py | 3 --- 1 file changed, 3 deletions(-) diff --git a/maths/area.py b/maths/area.py index 9a7b460e090a..4687fa0bfa53 100644 --- a/maths/area.py +++ b/maths/area.py @@ -41,7 +41,6 @@ def surface_area_sphere(radius: float) -> float: raise ValueError("surface_area_sphere() only accepts non-negative values") return 4 * pi * radius ** 2 - def surface_area_cone(radius: float, height: float) -> float: """ Calculate the Surface Area of a Cone. @@ -69,7 +68,6 @@ def surface_area_cone(radius: float, height: float) -> float: raise ValueError("surface_area_cone() only accepts non-negative values") return pi * radius * (radius + (height ** 2 + radius ** 2) ** 0.5) - def surface_area_cylinder(radius: float, height: float) -> float: """ Calculate the Surface Area of a Cylinder. @@ -97,7 +95,6 @@ def surface_area_cylinder(radius: float, height: float) -> float: raise ValueError("surface_area_cylinder() only accepts non-negative values") return 2 * pi * radius * (height + radius) - def area_rectangle(length: float, width: float) -> float: """ Calculate the area of a rectangle. From 33dd37e3f03bb601e471599523761ba70d46c15c Mon Sep 17 00:00:00 2001 From: Rohanrbharadwaj <89947037+Rohanrbharadwaj@users.noreply.github.com> Date: Mon, 11 Oct 2021 16:54:33 +0530 Subject: [PATCH 4/8] Update area.py --- maths/area.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/maths/area.py b/maths/area.py index 4687fa0bfa53..c3ce0c913854 100644 --- a/maths/area.py +++ b/maths/area.py @@ -41,12 +41,14 @@ def surface_area_sphere(radius: float) -> float: raise ValueError("surface_area_sphere() only accepts non-negative values") return 4 * pi * radius ** 2 + def surface_area_cone(radius: float, height: float) -> float: """ Calculate the Surface Area of a Cone. Wikipedia reference: https://en.wikipedia.org/wiki/Cone Formula: pi * r * (r + (h ** 2 + r ** 2) ** 0.5) + >>> surface_area_cone(10, 24) 1130.9733552923256 >>> surface_area_cone(6, 8) @@ -68,12 +70,14 @@ def surface_area_cone(radius: float, height: float) -> float: raise ValueError("surface_area_cone() only accepts non-negative values") return pi * radius * (radius + (height ** 2 + radius ** 2) ** 0.5) + def surface_area_cylinder(radius: float, height: float) -> float: """ Calculate the Surface Area of a Cylinder. Wikipedia reference: https://en.wikipedia.org/wiki/Cylinder Formula: 2 * pi * r * (h + r) + >>> surface_area_cylinder(7, 10) 747.6990515543707 >>> surface_area_cylinder(6, 8) @@ -95,6 +99,7 @@ def surface_area_cylinder(radius: float, height: float) -> float: raise ValueError("surface_area_cylinder() only accepts non-negative values") return 2 * pi * radius * (height + radius) + def area_rectangle(length: float, width: float) -> float: """ Calculate the area of a rectangle. From fc344f4a9c89f9a202a393b940b29db39ec6326d Mon Sep 17 00:00:00 2001 From: Rohanrbharadwaj <89947037+Rohanrbharadwaj@users.noreply.github.com> Date: Mon, 11 Oct 2021 16:59:42 +0530 Subject: [PATCH 5/8] Update area.py --- maths/area.py | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/maths/area.py b/maths/area.py index c3ce0c913854..93197638cc37 100644 --- a/maths/area.py +++ b/maths/area.py @@ -47,8 +47,7 @@ def surface_area_cone(radius: float, height: float) -> float: Calculate the Surface Area of a Cone. Wikipedia reference: https://en.wikipedia.org/wiki/Cone Formula: pi * r * (r + (h ** 2 + r ** 2) ** 0.5) - - + >>> surface_area_cone(10, 24) 1130.9733552923256 >>> surface_area_cone(6, 8) @@ -76,8 +75,7 @@ def surface_area_cylinder(radius: float, height: float) -> float: Calculate the Surface Area of a Cylinder. Wikipedia reference: https://en.wikipedia.org/wiki/Cylinder Formula: 2 * pi * r * (h + r) - - + >>> surface_area_cylinder(7, 10) 747.6990515543707 >>> surface_area_cylinder(6, 8) From 5d8fcfecba699cb1094ceb068b05b6545bcbc589 Mon Sep 17 00:00:00 2001 From: Rohan R Bharadwaj <89947037+Rohanrbharadwaj@users.noreply.github.com> Date: Thu, 14 Oct 2021 15:47:58 +0530 Subject: [PATCH 6/8] Update area.py --- maths/area.py | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/maths/area.py b/maths/area.py index 93197638cc37..1fa18f03e001 100644 --- a/maths/area.py +++ b/maths/area.py @@ -41,6 +41,24 @@ def surface_area_sphere(radius: float) -> float: raise ValueError("surface_area_sphere() only accepts non-negative values") return 4 * pi * radius ** 2 +def surface_area_hemisphere(radius: float) -> float: + """ + Calculate the Surface Area of a Hemisphere. + Formula: 3 * pi * r^2 + + >>> surface_area_hemisphere(5) + 235.61944901923448 + >>> surface_area_hemisphere(1) + 9.42477796076938 + >>> surface_area_hemisphere(-1) + Traceback (most recent call last): + ... + ValueError: surface_area_hemisphere() only accepts non-negative values + """ + if radius < 0: + raise ValueError("surface_area_hemisphere() only accepts non-negative values") + return 3 * pi * radius ** 2 + def surface_area_cone(radius: float, height: float) -> float: """ @@ -342,5 +360,6 @@ def area_rhombus(diagonal_1: float, diagonal_2: float) -> float: print("\nSurface Areas of various geometric shapes: \n") print(f"Cube: {surface_area_cube(20) = }") print(f"Sphere: {surface_area_sphere(20) = }") + print(f"Hemisphere: {surface_area_hemisphere(20) = }") print(f"Cone: {surface_area_cone(10, 20) = }") print(f"Cylinder: {surface_area_cylinder(10, 20) = }") From 18627650479f81e960052658a886932201d81b08 Mon Sep 17 00:00:00 2001 From: Rohan R Bharadwaj <89947037+Rohanrbharadwaj@users.noreply.github.com> Date: Thu, 14 Oct 2021 15:49:32 +0530 Subject: [PATCH 7/8] Update area.py --- maths/area.py | 1 + 1 file changed, 1 insertion(+) diff --git a/maths/area.py b/maths/area.py index 1fa18f03e001..2bde941f5189 100644 --- a/maths/area.py +++ b/maths/area.py @@ -41,6 +41,7 @@ def surface_area_sphere(radius: float) -> float: raise ValueError("surface_area_sphere() only accepts non-negative values") return 4 * pi * radius ** 2 + def surface_area_hemisphere(radius: float) -> float: """ Calculate the Surface Area of a Hemisphere. From 70d8ff02a32d18b9b8905a1e382665e87ebdf5c7 Mon Sep 17 00:00:00 2001 From: Rohan R Bharadwaj <89947037+Rohanrbharadwaj@users.noreply.github.com> Date: Thu, 14 Oct 2021 16:49:39 +0530 Subject: [PATCH 8/8] Update area.py --- maths/area.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/maths/area.py b/maths/area.py index 2bde941f5189..13c05af5f68e 100644 --- a/maths/area.py +++ b/maths/area.py @@ -51,6 +51,10 @@ def surface_area_hemisphere(radius: float) -> float: 235.61944901923448 >>> surface_area_hemisphere(1) 9.42477796076938 + >>> surface_area_hemisphere(0) + 0.0 + >>> surface_area_hemisphere(1.1) + 11.40398133253095 >>> surface_area_hemisphere(-1) Traceback (most recent call last): ...