C Program to find the area of an isosceles triangle – In this specific article, we will detail in on the several methods used to calculate the area of an isosceles triangle in C programming.
Check out the complete blog to understand the ways. The compiler has been added to aid you with the solutions. Also, check out the sample programs and suitable examples to calculate the area of an isosceles triangle.
The ways used to calculate the area of an isosceles triangle in C programming are as follows:
- Using Standard Method
- Using Function
- Using Pointers
- Using Macros
As we all know, an isosceles triangle is a triangle in which a couple of its sides are equal. Because of this specific trait, the angles opposite to the equal sides are also equal in nature.
An isosceles triangle looks like this:
As you can see in the image uploaded above, the isosceles triangle has a couple of sides with equal length a. b is the base and h is the height of the isosceles triangle.
The area of an isosceles triangle calculated with the help of this formula:
Area = 1/2 * Base * Height.
Thus, all the methods used to calculate the area of the isosceles triangle are as follows:
Using Standard Method
1) Length of same-sided will be store into “a” variable
2) Side2 value will be store in to “b” variable
3) Now we are calculating the area using area=(b*sqrt(4*(a*a)-(b*b)))/4
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
#include<stdio.h> #include<math.h> int main() { float a,b,area; printf("Enter the length of same sided: "); scanf("%f",&a); printf("Enter the side2 of the Triangle: "); scanf("%f",&b); area=(b*sqrt((4*a*a)-(b*b)))/4; printf("AOT: %f\n",area); return 0; } |
output:
1 2 3 |
Enter the length of same sided: 5 Enter the side2 of the Triangle: 6 AOT: 12.000000 |
Using Function
1)We are calling the function area(a,b) by passing a,b values
2)Now float area(float a, float b) function calculate the area,that value is return to ar=area(a,b);
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
#include<stdio.h> #include<math.h> float area(float a,float b) { return (b*sqrt((4*a*a)-(b*b)))/4; } int main() { float a,b,ar; printf("Enter the length of same sided: "); scanf("%f",&a); printf("Enter the side2 of the Triangle: "); scanf("%f",&b); ar=area(a,b); printf("AOT: %f\n",ar); return 0; } |
output:
1 2 3 |
Enter the length of same sided: 5 Enter the side2 of the Triangle: 8 AOT: 12.000000 |
Using Pointers
1)We are passing addresses of a,b and ar variables by using area(&a,&b,&ar)
2) void area(float *a,float *b,float *ar) in this function the values at that address will store into pointer
variables and calculate the area of a triangle
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
#include<stdio.h> #include<math.h> void area(float *a,float *b,float *ar) { *ar=((*b)*sqrt( (4*(*a)*(*a))-((*b)*(*b)) ) )/4; } int main() { float a,b,ar; printf("Enter the length of same sided: "); scanf("%f",&a); printf("Enter the side2 of the Triangle: "); scanf("%f",&b); area(&a,&b,&ar); printf("AOT: %f\n",ar); return 0; } |
output:
1 2 3 |
Enter the length of same sided: 10 Enter the side2 of the Triangle: 5 AOT: 24.206146 |
Using Macros
- Here (b)*sqrt((4*(a*a)-(b*b)))/4 was defined as area(a,b).
- area(a,b) replaced with that expression given in#define
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
#include<stdio.h> #include<math.h> #define area(a,b) ((b)*sqrt((4*a*a)-(b*b)))/4; int main() { float ar,b,a; printf("enter a: "); scanf("%f",&a); printf("enter b: "); scanf("%f",&b); ar=area(a,b); printf("AOT: %f\n",ar); return 0; } |
output:
1 2 3 |
enter a: 14 enter b: 6 AOT: 41.024384 |