Skip to content
Related Articles

Related Articles

Improve Article

Program to calculate area of a rhombus whose one side and diagonal are given

  • Difficulty Level : Expert
  • Last Updated : 07 Apr, 2021

Given the length of diagonal ‘d1’ of a rhombus and a side ‘a’, the task is to find the area of that rhombus.
 

A rhombus is a polygon having 4 equal sides in which both the opposite sides are parallel, and opposite angles are equal.

 

Examples: 
 



Input: d = 15, a = 10
Output: 99.21567416492215

Input: d = 20, a = 18
Output: 299.3325909419153

 

Approach:
 

  • Get the diagonal ‘d1’ and side ‘a’ of the rhombus
  • We know that, 
     

  •  
  • But since we don’t know the other diagonal d2, we cannot use this formula yet
  • So we first find the second diagonal d2 with the help of d1 and a
     

  •  
  • Now we can use the area formula to compute the area of the Rhombus

 

C++




// C++ program to calculate the area of a rhombus
// whose one side and one diagonal is given
#include<bits/stdc++.h>
using namespace std;
 
// function to calculate the area of the rhombus
double area(double d1, double a)
{
     
    // Second diagonal
    double d2 = sqrt(4 * (a * a) - d1 * d1);
 
    // area of rhombus
    double area = 0.5 * d1 * d2;
 
    // return the area
    return area;
}
 
// Driver code
int main()
{
    double d = 7.07;
    double a = 5;
    printf("%0.8f", area(d, a));
}
 
// This code is contributed by Mohit Kumar

Java




// Java program to calculate the area of a rhombus
// whose one side and one diagonal is given
class GFG
{
 
    // function to calculate the area of the rhombus
    static double area(double d1, double a)
    {
         
        // Second diagonal
        double d2 = Math.sqrt(4 * (a * a) - d1 * d1);
     
        // area of rhombus
        double area = 0.5 * d1 * d2;
     
        // return the area
        return area;
    }
     
    // Driver code
    public static void main (String[] args)
    {
        double d = 7.07;
        double a = 5;
        System.out.println(area(d, a));
    }
}
 
// This code is contributed by AnkitRai01

Python3




# Python program to calculate
# the area of a rhombus
# whose one side and
# one diagonal is given
 
# function to calculate
# the area of the rhombus
def area(d1, a):
     
    # Second diagonal
    d2 = (4*(a**2) - d1**2)**0.5
     
    # area of rhombus
    area = 0.5 * d1 * d2
     
    # return the area
    return(area)
 
# driver code
d = 7.07
a = 5
print(area(d, a))

C#




// C# program to calculate the area of a rhombus
// whose one side and one diagonal is given
using System;
 
class GFG
{
 
    // function to calculate the area of the rhombus
    static double area(double d1, double a)
    {
         
        // Second diagonal
        double d2 = Math.Sqrt(4 * (a * a) - d1 * d1);
     
        // area of rhombus
        double area = 0.5 * d1 * d2;
     
        // return the area
        return area;
    }
     
    // Driver code
    public static void Main (String []args)
    {
        double d = 7.07;
        double a = 5;
        Console.WriteLine(area(d, a));
    }
}
 
// This code is contributed by Arnab Kundu

Javascript




<script>
// javascript program to calculate the area of a rhombus
// whose one side and one diagonal is given  
// function to calculate the area of the rhombus
function area(d1 , a)
{
     
    // Second diagonal
    var d2 = Math.sqrt(4 * (a * a) - d1 * d1);
 
    // area of rhombus
    var area = 0.5 * d1 * d2;
 
    // return the area
    return area;
}
 
// Driver code
var d = 7.07;
var a = 5;
document.write(area(d, a));
 
// This code is contributed by 29AjayKumar
</script>
Output: 
24.999998859949972

 

Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready.  To complete your preparation from learning a language to DS Algo and many more,  please refer Complete Interview Preparation Course.

In case you wish to attend live classes with experts, please refer DSA Live Classes for Working Professionals and Competitive Programming Live for Students.




My Personal Notes arrow_drop_up
Recommended Articles
Page :