Pythagoras Generalized Theorem implementation

View versions (1)

Interface

Overview

The aim of this module is to implement Pythagoras Generalized Theorem. Given any triangle knowing the value of two sides and the angle between them, one can find out the value of the third side.

21303/triangle_2.png

According to Pythagora's Generalized Theorem the value of AC side is:

\textit{AC} = \sqrt{\textit{AB}^2 + \textit{BC}^2 - 2 \cdot  \textit{AB} \cdot \textit{BC} \cdot \cos(\widehat{\textit{ABC}}) }
(1)

This can easily be proven using normal Pythagoras Theorem in the ADC triangle:

\textit{AC}^2 = \texit{AD}^2 + \textit{DC}^2
(2)

However,

\sin{\beta} = \frac{\textit{AD}}{\texit{AB}}
(3)

and

\cos{\beta} = \frac{\textit{BD}}{\texit{AB}}
(4)

Thus, using the last three equations:

\texit{AC}^2 = \sin^2{\beta} \cdot \texit{AB}^2 + \cos^2{\beta} \cdot \textit{AB} + (\texit{BC} - \texit{BD})^2
(5)

which is

\texit{AC}^2 = \texit{AB}^2 +\texit{BC}^2 - 2 \cdot \texit{AB} \cdot \texit{BC} \cdot \cos{\beta}
(6)

Example 1

#include <stdio.h>
#include <codecogs/maths/geometry/pythgen.h>

int main()
{
    //an equal-sided triangle with the side value of 3.5 
    double thirdSide = pythgen_PythagorasGen(3.5,3.5,60);

    printf("\nThe value of the 3rd side: %.2lf", thirdSide);

    return 0;
}

Output

The value of the 3rd side: 3.50
GPL Licence — free for non commercial use. See Licence details.

FUNCTION

pythgen_SetAngleDegRad

Parameters

alpha
value of angle measured in degrees

Returns

value of angle measured in radians
Author

Victor Larie (May 2010)

Interactive Calculator

alpha
Result

FUNCTION

pythgen_PythagorasGen

Parameters

x
the value of one side of the triangle
y
the value of another side of the triangle
alpha
the value of the angle between the sides given in degrees

Returns

the value of the third side of the triangle
Author

Victor Larie (May 2010)

Interactive Calculator

x
y
alpha
Result