File tree Expand file tree Collapse file tree 1 file changed +24
-0
lines changed Expand file tree Collapse file tree 1 file changed +24
-0
lines changed Original file line number Diff line number Diff line change @@ -109,6 +109,18 @@ template <typename T>
109
109
T cylinder_surface_area (T radius, T height) {
110
110
return 2 * M_PI * radius * height + 2 * M_PI * pow (radius, 2 );
111
111
}
112
+
113
+ /* *
114
+ * @brief surface area of a [hemi-sphere](https://en.wikipedia.org/wiki/Surface_area) ( 3 *
115
+ * pi * r^2)
116
+ * @param radius is the radius of the hemi-sphere
117
+ * @tparam T datatype of radius
118
+ * @returns surface area of the hemi-sphere
119
+ */
120
+ template <typename T>
121
+ T hemi_sphere_surface_area (T radius) {
122
+ return 3 * M_PI * pow (radius, 2 );
123
+ }
112
124
} // namespace math
113
125
114
126
/* *
@@ -267,6 +279,18 @@ static void test() {
267
279
std::cout << " Output: " << double_area << std::endl;
268
280
assert (double_area == double_expected);
269
281
std::cout << " TEST PASSED" << std::endl << std::endl;
282
+
283
+ // 11th test
284
+ double_radius = 10.0 ;
285
+ double_expected = 942.4777960769379 ;
286
+ double_area = math::hemi_sphere_surface_area (double_radius);
287
+
288
+ std::cout << " SURFACE AREA OF A HEMI-SPHERE" << std::endl;
289
+ std::cout << " Input Radius: " << double_radius << std::endl;
290
+ std::cout << " Expected Output: " << double_expected << std::endl;
291
+ std::cout << " Output: " << double_area << std::endl;
292
+ assert (double_area == double_expected);
293
+ std::cout << " TEST PASSED" << std::endl << std::endl;
270
294
}
271
295
272
296
/* *
You can’t perform that action at this time.
0 commit comments