Find the type of triangle from the given sides - GeeksforGeeks

13 Sep, 2021
Given three integers A, B, and C which denote the sides of a triangle, the task is to check that the triangle is a right-angled, acute-angled, or obtuse-angled triangle.Examples:  
Input: A = 1, B = 4, C = 3 Output: Obtuse-angled Triangle Explanation: Triangle with the sides 1, 2 and 3 is an obtuse-angled triangleInput: A = 2, B = 2, C = 2 Output: Acute-angled Triangle Explanation: Triangle with the sides 2, 2, and 2 is an acute-angled triangle  
 
Approach: The idea is to use the facts from the cosine law to check the type of triangle using these formulae – It generalizes the Pythagorean Theorem, which states that for a right-angled triangle square of the hypotenuse is equal to the sum of squares of the base and height of the triangle, which is Similarly, It can be observed that For acute-angled triangle For Obtuse-angled triangle Below is the implementation of the above approach: 
C++
Java
Python3
C#
Javascript
// C++ implementation to find// the type of triangle with// the help of the sides #include <bits/stdc++.h>using namespace std; // Function to find the type of// triangle with the help of sidesvoid checkTypeOfTriangle(int a,                int b, int c){    int sqa = pow(a, 2);    int sqb = pow(b, 2);    int sqc = pow(c, 2);         if (sqa == sqb + sqc ||        sqb == sqc + sqa ||        sqc == sqa + sqb){        cout << "Right-angled Triangle";    }    else if(sqa > sqc + sqb ||            sqb > sqa + sqc ||            sqc > sqa + sqb){        cout << "Obtuse-angled Triangle";    }    else{        cout << "Acute-angled Triangle";    }} // Driver Codeint main(){    int a, b, c;    a = 2;    b = 2;    c = 2;         // Function Call    checkTypeOfTriangle(a, b, c);    return 0;}
// Java implementation to find// the type of triangle with// the help of the sidesimport java.util.*; class GFG{ // Function to find the type of// triangle with the help of sidesstatic void checkTypeOfTriangle(int a,                int b, int c){    int sqa = (int)Math.pow(a, 2);    int sqb = (int)Math.pow(b, 2);    int sqc = (int)Math.pow(c, 2);         if (sqa == sqa + sqb ||        sqb == sqa + sqc ||        sqc == sqa + sqb){        System.out.print("Right-angled Triangle");    }    else if(sqa > sqc + sqb ||            sqb > sqa + sqc ||            sqc > sqa + sqb){        System.out.print("Obtuse-angled Triangle");    }    else{        System.out.print( "Acute-angled Triangle");    }} // Driver Codepublic static void main (String []args){    int a, b, c;    a = 2;    b = 2;    c = 2;         // Function Call    checkTypeOfTriangle(a, b, c);}} // This code is contribute by chitranayal
# Python3 implementation to find# the type of triangle with# the help of the sides # Function to find the type of# triangle with the help of sidesdef checkTypeOfTriangle(a,b,c):    sqa = pow(a, 2)    sqb = pow(b, 2)    sqc = pow(c, 2)     if (sqa == sqa + sqb or        sqb == sqa + sqc or        sqc == sqa + sqb):        print("Right-angled Triangle")     elif(sqa > sqc + sqb or            sqb > sqa + sqc or            sqc > sqa + sqb):        print("Obtuse-angled Triangle")     else:        print("Acute-angled Triangle") # Driver Codeif __name__ == '__main__':    a = 2    b = 2    c = 2     # Function Call    checkTypeOfTriangle(a, b, c) # This code is contributed by mohit kumar 29
// C# implementation to find// the type of triangle with// the help of the sidesusing System; class GFG{  // Function to find the type of// triangle with the help of sidesstatic void checkTypeOfTriangle(int a,                int b, int c){    int sqa = (int)Math.Pow(a, 2);    int sqb = (int)Math.Pow(b, 2);    int sqc = (int)Math.Pow(c, 2);          if (sqa == sqa + sqb ||        sqb == sqa + sqc ||        sqc == sqa + sqb){        Console.Write("Right-angled Triangle");    }    else if(sqa > sqc + sqb ||            sqb > sqa + sqc ||            sqc > sqa + sqb){        Console.Write("Obtuse-angled Triangle");    }    else{        Console.Write( "Acute-angled Triangle");    }}  // Driver Codepublic static void Main(String []args){    int a, b, c;    a = 2;    b = 2;    c = 2;          // Function Call    checkTypeOfTriangle(a, b, c);}} // This code is contributed by 29AjayKumar
<script> // JavaScript implementation to find// the type of triangle with// the help of the sides // Function to find the type of// triangle with the help of sidesfunction checkTypeOfTriangle(a,b,c){    let sqa = Math.floor(Math.pow(a, 2));       let sqb = Math.floor(Math.pow(b, 2));    let sqc = Math.floor(Math.pow(c, 2));           if (sqa == sqa + sqb ||        sqb == sqa + sqc ||        sqc == sqa + sqb){        document.write("Right-angled Triangle");    }    else if(sqa > sqc + sqb ||            sqb > sqa + sqc ||            sqc > sqa + sqb){        document.write("Obtuse-angled Triangle");    }    else{        document.write( "Acute-angled Triangle");    }} // Driver Codelet a, b, c;a = 2;b = 2;c = 2; // Function CallcheckTypeOfTriangle(a, b, c); // This code is contributed by rag2127 </script>
Acute-angled Triangle
 
mohit kumar 29
ukasp
29AjayKumar
prakharcsegbu
rag2127
sumitgumber28
Articles
Geometric
Mathematical
Mathematical
Geometric
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
How to write a Pseudo Code?
Analysis of Algorithms | Set 1 (Asymptotic Analysis)
SQL Interview Questions
Time Complexity and Space Complexity
Analysis of Algorithms | Set 3 (Asymptotic Notations)
Closest Pair of Points using Divide and Conquer algorithm
Program for distance between two points on earth
Find if two rectangles overlap
Line Clipping | Set 1 (Cohen–Sutherland Algorithm)
Optimum location of point to minimize total distance