# Program to find area of a triangle

• Difficulty Level : Basic
• Last Updated : 24 Nov, 2021

Finding area using given sides:

Examples :

Attention reader! All those who say programming isn't for kids, just haven't met the right mentors yet. Join the  Demo Class for First Step to Coding Coursespecifically designed for students of class 8 to 12.

The students will get to learn more about the world of programming in these free classes which will definitely help them in making a wise career choice in the future.

Input : a = 5, b = 7, c = 8
Output : Area of a triangle is 17.320508

Input : a = 3, b = 4, c = 5
Output : Area of a triangle is 6.000000

Area of a triangle can simply be evaluated using following formula.

Area = sqrt(s*(s-a)*(s-b)*(s-c))
where a, b and c are lengths of sides of
triangle and s = (a+b+c)/2 ## C++

 // C++ Program to find the area // of triangle #include using namespace std;  float findArea(float a, float b, float c) {     // Length of sides must be positive     // and sum of any two sides     // must be smaller than third side.     if (a < 0 || b < 0 || c < 0 ||        (a + b <= c) || a + c <= b ||                        b + c <= a)     {         cout << "Not a valid triangle";         exit(0);     }     float s = (a + b + c) / 2;     return sqrt(s * (s - a) *                     (s - b) * (s - c)); }   // Driver Codeint main() {     float a = 3.0;     float b = 4.0;     float c = 5.0;       cout << "Area is " << findArea(a, b, c);     return 0; }   // This code is contributed // by rathbhupendra

## C

 #include  #include    float findArea(float a, float b, float c){    // Length of sides must be positive and sum of any two sides    // must be smaller than third side.    if (a < 0 || b < 0 || c <0 || (a+b <= c) ||        a+c <=b || b+c <=a)    {        printf("Not a valid triangle");        exit(0);    }    float s = (a+b+c)/2;    return sqrt(s*(s-a)*(s-b)*(s-c));}  int main(){    float a = 3.0;    float b = 4.0;    float c = 5.0;      printf("Area is %f", findArea(a, b, c));    return 0;}

## Java

 // Java program to print// Floyd's triangle      class Test{    static float findArea(float a, float b, float c)    {        // Length of sides must be positive and sum of any two sides        // must be smaller than third side.        if (a < 0 || b < 0 || c <0 || (a+b <= c) ||            a+c <=b || b+c <=a)        {            System.out.println("Not a valid triangle");            System.exit(0);        }        float s = (a+b+c)/2;        return (float)Math.sqrt(s*(s-a)*(s-b)*(s-c));    }              // Driver method    public static void main(String[] args)     {        float a = 3.0f;        float b = 4.0f;        float c = 5.0f;              System.out.println("Area is " + findArea(a, b, c));    }}

## Python

 # Python Program to find the area # of triangle   # Length of sides must be positive # and sum of any two sides def findArea(a,b,c):       # must be smaller than third side.     if (a < 0 or b < 0 or c < 0 or (a+b <= c) or (a+c <=b) or (b+c <=a) ):         print('Not a valid triangle')         return              # calculate the semi-perimeter     s = (a + b + c) / 2          # calculate the area     area = (s * (s - a) * (s - b) * (s - c)) ** 0.5    print('Area of a triangle is %f' %area)     # Initialize first side of triangle a = 3.0# Initialize second side of triangle b = 4.0# Initialize Third side of triangle c = 5.0findArea(a,b,c)   # This code is contributed by Shariq Raza

## C#

 // C# program to print// Floyd's triangleusing System;  class Test {          // Function to find area    static float findArea(float a, float b,                        float c)    {                  // Length of sides must be positive        // and sum of any two sides        // must be smaller than third side.        if (a < 0 || b < 0 || c <0 ||         (a + b <= c) || a + c <=b ||             b + c <=a)        {            Console.Write("Not a valid triangle");            System.Environment.Exit(0);        }        float s = (a + b + c) / 2;        return (float)Math.Sqrt(s * (s - a) *                             (s - b) * (s - c));    }              // Driver code    public static void Main()     {        float a = 3.0f;        float b = 4.0f;        float c = 5.0f;              Console.Write("Area is " + findArea(a, b, c));    }}  // This code is contributed Nitin Mittal.

## PHP

 

## Javascript

 

Output :

Area is 6

Time Complexity: O(log2n)

Auxiliary Space: O(1)
Finding area using coordinates:

If we are given coordinates of three corners, we can apply below Shoelace formula for area.

Area = | 1/2 [ (x1y2 + x2y3 + ... + xn-1yn + xny1) -
(x2y1 + x3y2 + ... + xnyn-1 + x1yn) ] | 

## C++

 // C++ program to evaluate area of a polygon using// shoelace formula#include using namespace std;   // (X[i], Y[i]) are coordinates of i'th point.double polygonArea(double X[], double Y[], int n){    // Initialize area    double area = 0.0;       // Calculate value of shoelace formula    int j = n - 1;    for (int i = 0; i < n; i++)    {        area += (X[j] + X[i]) * (Y[j] - Y[i]);        j = i;  // j is previous vertex to i    }       // Return absolute value    return abs(area / 2.0);}   // Driver program to test above functionint main(){    double X[] = {0, 2, 4};    double Y[] = {1, 3, 7};       int n = sizeof(X)/sizeof(X);       cout << polygonArea(X, Y, n);}

## Java

 // Java program to evaluate area of // a polygon usingshoelace formulaimport java.io.*;import java.math.*;  class GFG {      // (X[i], Y[i]) are coordinates of i'th point.    static double polygonArea(double X[], double Y[], int n)    {        // Initialize area        double area = 0.0;              // Calculate value of shoelace formula        int j = n - 1;        for (int i = 0; i < n; i++)        {            area += (X[j] + X[i]) * (Y[j] - Y[i]);                          // j is previous vertex to i            j = i;         }              // Return absolute value        return Math.abs(area / 2.0);    }          // Driver program     public static void main (String[] args)     {        double X[] = {0, 2, 4};        double Y[] = {1, 3, 7};          int n = X.length;        System.out.println(polygonArea(X, Y, n));    }}    // This code is contributed// by Nikita Tiwari.

## Python3

 # Python 3 program to evaluate# area of a polygon using# shoelace formula  # (X[i], Y[i]) are coordinates of i'th point.def polygonArea(X,Y, n) :      # Initialize area    area = 0.0        # Calculate value of shoelace formula    j = n - 1    for i in range( 0, n) :        area = area + (X[j] + X[i]) * (Y[j] - Y[i])        j = i  # j is previous vertex to i                # Return absolute value    return abs(area // 2.0)      # Driver program to test above functionX = [0, 2, 4]Y = [1, 3, 7]  n = len(X)print(polygonArea(X, Y, n))    # This code is contributed# by Nikita Tiwari.

## C#

 // C# program to evaluate area of // a polygon usingshoelace formulausing System;  class GFG {      // (X[i], Y[i]) are coordinates     // of i'th point.    static double polygonArea(double []X,                       double []Y, int n)    {        // Initialize area        double area = 0.0;              // Calculate value of shoelace        // formula        int j = n - 1;        for (int i = 0; i < n; i++)        {            area += (X[j] + X[i]) *                         (Y[j] - Y[i]);                          // j is previous vertex to i            j = i;         }              // Return absolute value        return Math.Abs(area / 2.0);    }          // Driver program     public static void Main ()     {        double []X = {0, 2, 4};        double []Y = {1, 3, 7};          int n = X.Length;        Console.WriteLine(                 polygonArea(X, Y, n));    }}  // This code is contributed by anuj_67.

## PHP

 

## Javascript

 

Output:

2

Time Complexity: O(n)

Auxiliary Space: O(1)