Related Articles
Program to find Area of Triangle inscribed in N-sided Regular Polygon
• Last Updated : 16 Mar, 2021

Given the triangle inscribed in an N-sided regular polygon with given side length, formed using any 3 vertices of the polygon, the task is to find the area of this triangle.
Examples:

Input: N = 6, side = 10
Output: 129.904

Input: N = 8, side = 5
Output: 45.2665

Approach: Consider the 1st example:

• Given is a 6 sided regular polygon ABCDEF with a triangle AEC inscribed in it.

• As it can be seen, the triangle divides given polygon into 6 equal triangular areas, where the point of intersection of triangle AEC is the centroid of the triangle.

•

• Area of each of the triangulated part will be (TriangulatedArea = Area of N sided regular polygon / N) from the law of symmetry.

• Since the Triangle ACE comprises of 3 out of 6 in it, So the area of triangle ACE will be (3 * TriangulatedArea)

• Therefore, in general, if there is an N-sided regular polygon with area A, the area of a triangle inscribed in it will be (A/N)*3.

Below is the implementation of the above approach:

## C++

 // C++ Program to find the area of a triangle// inscribed in N-sided regular polygon #include #include using namespace std; // Function to find the area of the polygondouble area_of_regular_polygon(double n, double len){     // area of a regular polygon with N sides    // and side length len    double P = (len * n);    double A        = len          / (2 * tan((180 / n)                     * 3.14159 / 180));    double area = (P * A) / 2;     return area;} // Function to find the area of a triangledouble area_of_triangle_inscribed(double n, double len){     double area = area_of_regular_polygon(n, len);     // area of one triangle    // in an N-sided regular polygon    double triangle = area / n;     // area of inscribed triangle    double ins_tri = (triangle * 3);     return ins_tri;} // Driver codeint main(){    double n = 6, len = 10;     cout << area_of_triangle_inscribed(n, len)         << endl;     return 0;}

## Java

 // Java Program to find the area of a triangle// inscribed in N-sided regular polygonimport java.util.*; class GFG{ // Function to find the area of the polygonstatic double area_of_regular_polygon(double n,                                      double len){     // area of a regular polygon with N sides    // and side length len    double P = (len * n);    double A = len / (2 * Math.tan((180 / n) *                             3.14159 / 180));    double area = (P * A) / 2;     return area;} // Function to find the area of a trianglestatic double area_of_triangle_inscribed(double n,                                         double len){    double area = area_of_regular_polygon(n, len);     // area of one triangle    // in an N-sided regular polygon    double triangle = area / n;     // area of inscribed triangle    double ins_tri = (triangle * 3);     return ins_tri;} // Driver codestatic public void main(String[] arg){    double n = 6, len = 10;     System.out.printf("%.3f",           area_of_triangle_inscribed(n, len));}} // This code is contributed by PrinciRaj1992

## Python3

 # Python3 Program to find the area# of a triangle inscribed in# N-sided regular polygonimport math # Function to find the area of the polygondef area_of_regular_polygon(n, len):     # area of a regular polygon with    # N sides and side length len    P = (len * n);    A = len / (2 * math.tan((180 / n) *                      3.14159 / 180))    area = (P * A) / 2     return area # Function to find the area of a triangledef area_of_triangle_inscribed(n, len):     area = area_of_regular_polygon(n, len)     # area of one triangle    # in an N-sided regular polygon    triangle = area / n     # area of inscribed triangle    ins_tri = (triangle * 3);     return ins_tri # Driver coden = 6len = 10print(round(area_of_triangle_inscribed(n, len), 3)) # This code is contributed by divyamohan

## C#

 // C# Program to find the area of a triangle// inscribed in N-sided regular polygonusing System;                     class GFG{ // Function to find the area of the polygonstatic double area_of_regular_polygon(double n,                                      double len){     // area of a regular polygon with N sides    // and side length len    double P = (len * n);    double A = len / (2 * Math.Tan((180 / n) *                             3.14159 / 180));    double area = (P * A) / 2;     return area;} // Function to find the area of a trianglestatic double area_of_triangle_inscribed(double n,                                         double len){    double area = area_of_regular_polygon(n, len);     // area of one triangle    // in an N-sided regular polygon    double triangle = area / n;     // area of inscribed triangle    double ins_tri = (triangle * 3);     return ins_tri;} // Driver codestatic public void Main(String[] arg){    double n = 6, len = 10;     Console.Write("{0:F3}",            area_of_triangle_inscribed(n, len));}} // This code is contributed by PrinciRaj1992

## Javascript


Output:
129.904

My Personal Notes arrow_drop_up