A right wedge is a wedge with parallel side triangles. It have two side bases a and b, top edges e and height h. The task is to find the volume of the given rectangular right wedges.
Examples:
Input: a = 2, b = 5, e = 5, h = 6
Output: Volume = 45.0
Input: a = 5, b = 4, e = 4, h = 6
Output: Volume = 56.0
Approach:
Va is the volume of triangular pyramid i.e. Va = (1 / 3) * area of triangle * (e – a)
Area of triangle = (1 / 2) * b * h
i.e Va = ( 1 / 3 ) * (( 1 / 2 ) * ( b * h * (e – a)))
Vb is a volume of triangular prism i.e. Vb = area of cross section * length(side)
i.e. Vb = (1 / 2) * (b * h * a)
Total Volume = Va + Vb
= (1 / 3) * ((1 / 2) * (b * h * ( e – a ))) + (1 / 2) * (b * h * a)
= (1 / 6) * (b * h * (e – a)) + (1 / 2) * (b * h * a)
= ((b * h) * (e – a) + 3 * b * h * a) / 6
= (b * h * e – b * h * a + 3 * b * h * a) / 6
= (b * h * e + 2 * b * h * a) / 6
= (b * h / 6) * (2 * a + e)
Volume of the rectangular right wedge = (b * h / 6) * (2 * a + e) where a and b are the side bases, e is the top edge and h is the height of the rectangular right wedge.
Below is the implementation of the above approach:
// CPP program to find volume of rectangular right wedge #include <bits/stdc++.h> using namespace std;
// function to return volume //of rectangular right wedge double volumeRec( double a, double b, double e, double h)
{ return (((b * h )/ 6)*(2 * a + e));
} // Driver code int main()
{ double a = 2;
double b = 5;
double e = 5;
double h = 6;
printf ( "Volume = %.1f" ,volumeRec(a, b, e, h));
return 0;
} // This code contributed by nidhiva |
// Java implementation of the approach class GFG {
// Function to return the volume
// of the rectangular right wedge
static double volumeRec( double a, double b, double e, double h)
{
return (((b * h) / 6 ) * ( 2 * a + e));
}
// Driver code
public static void main(String[] args) throws java.lang.Exception
{
double a = 2 , b = 5 , e = 5 , h = 6 ;
System.out.print( "Volume = " + volumeRec(a, b, e, h));
}
} |
# Python3 implementation of the approach # Function to return the volume # of the rectangular right wedge def volumeRec(a, b, e, h) :
return (((b * h) / 6 ) * ( 2 * a + e));
# Driver code if __name__ = = "__main__" :
a = 2 ; b = 5 ; e = 5 ; h = 6 ;
print ( "Volume = " ,volumeRec(a, b, e, h));
# This code is contributed by AnkitRai01 |
// C# implementation of the approach using System;
class GFG
{ // Function to return the volume
// of the rectangular right wedge
static double volumeRec( double a, double b,
double e, double h)
{
return (((b * h) / 6) * (2 * a + e));
}
// Driver code
public static void Main()
{
double a = 2, b = 5, e = 5, h = 6;
Console.WriteLine( "Volume = " + volumeRec(a, b, e, h));
}
} // This code is contributed by vt_m. |
<script> // javascript program to find volume of rectangular right wedge // function to return volume //of rectangular right wedge function volumeRec( a, b, e, h)
{ return (((b * h )/ 6)*(2 * a + e));
} // Driver code let a = 2;
let b = 5;
let e = 5;
let h = 6;
document.write( "Volume = " +volumeRec(a, b, e, h).toFixed(1));
// This code is contributed by Rajput-Ji </script> |
Volume = 45.0
Time Complexity: O(1)
Auxiliary Space: O(1)