Calculate the area of a triangle when all the three sides are known using Heron's Formula in Python.
Ever got bored of using angles and distances first for calculating the area of a triangle?
Well, thanks to the Hero of Alexandria!
He gave a simple formula to calculate the area of a triangle when all the three sides are known to us.
The formula was named after him as "Heron's Formula".
Look at this figure! All the lengths of the three sides of a triangle a, b, and c are given.
The area A of a triangle is given by:
a: length of side 1
b: length of side 2
c: length of side 3
s: semi-perimeter of the triangle
A: area of the triangle
Let's now code a small python implementation for calculating the area of the triangle using Heron's formula!
import math # function to calculate the area of a triangle # when its three sides a, b, and c are given def areaOfTriangle(a, b, c): # s is the semi-perimeter of the triangle s = (a + b + c) / 2 product = s * (s - a) * (s - b) * (s - c) # product >= means triangle can be formed with the given sides if product > 0: # Calculate area using Heron's Formula area = math.sqrt(product) # when the triangle can't be formed with the given sides, area=0 else: area = 0 return area
Now let's check the function areaOfTriangle() on various test-cases!
sides = [(3, 4, 5), (13, 4, 15), (4, 4, 4), (4, 4, 2), (1, 2, 3)] for (a, b, c) in sides: print("Area of the triangle with sides a=", a, "units, b=", b, "units, and c=", c, "units is ", round(areaOfTriangle(a, b, c), 3),"units^2.")
Run the above code and you'll get the following output.
Area of the triangle with sides a= 3 units, b= 4 units, and c= 5 units is 6.0 units^2. Area of the triangle with sides a= 13 units, b= 4 units, and c= 15 units is 24.0 units^2. Area of the triangle with sides a= 4 units, b= 4 units, and c= 4 units is 6.928 units^2. Area of the triangle with sides a= 4 units, b= 4 units, and c= 2 units is 3.873 units^2. Area of the triangle with sides a= 1 units, b= 2 units, and c= 3 units is 0 units^2.
Look at the test-case 1. It's a right angles triangle with two sides of length 3 and 4 units and a hypotenuse of length 5 units. The area is 6 unit2.
It's the only triangle with consecutive integral side-lengths and area.
Let the consecutive integer sides be d-1, d, d+1 and the area be d+2.
Area using heron's formula A will be
Equating and solving A = d+2.
Submitted by Kalki Pareshkumar Bhavsar (KalkiBhavsar)
Download packets of source code on Coders Packet