📜  计算菱形面积的程序,其一侧和对角线已给定

📅  最后修改于: 2021-10-23 08:35:08             🧑  作者: Mango

给定菱形的对角线“d1”和边“a”的长度,任务是找到该菱形的面积。

例子:

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

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

方法:

  • 获取菱形的对角线“d1”和“a”边
  • 我们知道,

  • 但是因为我们不知道另一个对角线 d2,所以我们还不能使用这个公式
  • 所以我们首先借助 d1 和 a

  • 现在我们可以使用面积公式来计算菱形的面积
C++
// C++ program to calculate the area of a rhombus
// whose one side and one diagonal is given
#include
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


输出:
24.999998859949972

如果您希望与专家一起参加现场课程,请参阅DSA 现场工作专业课程学生竞争性编程现场课程