Length of remaining two sides of a Triangle from a given side and its adjacent angles

Given the length of a side a of a triangle and its adjacent angles B and C, the task is to find the remaininig two sides of triangle.

Input: a = 5, B = 62.2, C = 33.5
Output: 4.44, 2.77
Explaination
The remaining two sides of the triangle are b = 4.44488228556699 and c = 2.7733977979419038

Input: a = 12, B = 60, C = 30
Output: 10.39, 5.99
Explaination
The remaining two sides of the triangle are b = 10.392304845413264 and c = 5.999999999999999

Approach:

  1. The remaining angle can be calculated by the angle sum theoram in a triangle:
  2.  A = 180 - B - C



  3. The other two sides of triangle can be computed using sine formula:
  4. a/sin A = b/sinB = c/sinC = constant

Below is the implementation of the above approch:

Python3

filter_none

edit
close

play_arrow

link
brightness_4
code

# Python 3 program for above approach
  
import math
  
# Function for computing other
# 2 side of the trianlgle
def findSide(a, B, C):
  
    # computing angle C
    A = 180-C-B
  
    # converting A in to radian
    radA = math.pi *(A / 180)
  
    # converting B in to radian
    radB = math.pi *(B / 180)
  
    # converting C in to radian
    radC = math.pi *(C / 180)
  
    # computing length of side b
    b = a / math.sin(radA)*math.sin(radB)
  
    # computing length of side c
    c = a / math.sin(radA)*math.sin(radC)
  
    return b, c
  
# driver program
a = 12
B = 60
C = 30
  
# calling function
b, c = findSide(a, B, C)
print(b, c)

chevron_right


Output:

10.392304845413264 5.999999999999999

Time Complexity: O(1)
Auxillary Space: O(1)

Don’t stop now and take your learning to the next level. Learn all the important concepts of Data Structures and Algorithms with the help of the most trusted course: DSA Self Paced. Become industry ready at a student-friendly price.




My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.