📌  相关文章
📜  查找等腰三角形的高度和面积

📅  最后修改于: 2021-04-27 06:18:50             🧑  作者: Mango

给定等腰三角形的边(a) 。任务是找到面积(A)和高度(h) 。等腰三角形是具有两个相等长度的边和与每个相等边相邻的两个相等内角的三角形。

在这个图中
a-等腰三角形等边的度量。
b-等腰三角形的底。
h-等腰三角形的高度。

例子:

Input: a = 2, b = 3
Output: altitude = 1.32, area = 1.98

Input: a = 5, b = 6
Output: altitude = 4, area = 12

公式:以下是等腰三角形的高度和面积的公式。

    $$ Altitude (h)= \sqrt{a^{2}- \frac{b^{2}}{2}} $$

[Tex] $$ Area(A)= \ frac {1} {2} \ times b \ times h $$ [/ Tex]

以下是使用上述公式的实现:

C++
// CPP program to find the Altitude
// Area of an isosceles triangle
#include 
using namespace std;
 
// function to find the atitude
float altitude(float a, float b)
{
    // return altitude
    return sqrt(pow(a, 2) - (pow(b, 2) / 4));
}
 
// function to find the area
float area(float b, float h)
{
 
    // return area
    return (1 * b * h) / 2;
}
 
// Driver code
int main()
{
 
    float a = 2, b = 3;
    float h = altitude(a, b);
    cout << setprecision(3);
    cout << "Altitude= " << h << ", ";
 
    cout << "Area= " << area(b, h);
    return 0;
}


Java
// Java program to find the Altitude
// Area of an isosceles triangle
 
import java.io.*;
 
class GFG {
 
    // function to find the atitude
    static float altitude(float a, float b)
    {
        // return altitude
        return (float)(Math.sqrt(Math.pow(a, 2)
                                 - (Math.pow(b, 2) / 4)));
    }
 
    // function to find the area
    static float area(float b, float h)
    {
 
        // return area
        return (1 * b * h) / 2;
    }
 
    // Driver Code
 
    public static void main(String[] args)
    {
        float a = 2, b = 3;
        float h = altitude(a, b);
        System.out.print("Altitude= " + h + ", ");
 
        System.out.print("Area= " + area(b, h));
    }
}
// This code is contributed by  inder_verma.


Python 3
# Python 3 program to find
# the Altitude Area of an
# isosceles triangle
import math
 
# function to find the atitude
 
 
def altitude(a, b):
 
    # return altitude
    return math.sqrt(pow(a, 2) -
                     (pow(b, 2) / 4))
 
# function to find the area
 
 
def area(b, h):
 
    # return area
    return (1 * b * h) / 2
 
 
# Driver Code
if __name__ == "__main__":
 
    a = 2
    b = 3
    h = altitude(a, b)
    print("Altitude = " +
          str(round(h, 3)), end=", ")
 
    print("Area = " +
          str(round(area(b, h), 3)))
 
# This code is contributed
# by ChitraNayal


C#
// C# program to find the Altitude
// Area of an isosceles triangle
using System;
 
class GFG {
 
    // function to find the atitude
    static float altitude(float a, float b)
    {
        // return altitude
        return (float)(Math.Sqrt(Math.Pow(a, 2)
                                 - (Math.Pow(b, 2) / 4)));
    }
 
    // function to find the area
    static float area(float b, float h)
    {
 
        // return area
        return (1 * b * h) / 2;
    }
 
    // Driver Code
    public static void Main()
    {
        float a = 2, b = 3;
        float h = altitude(a, b);
        Console.WriteLine("Altitude = " + h + ", ");
 
        Console.WriteLine("Area = " + area(b, h));
    }
}
 
// This code is contributed
// by inder_verma


PHP


Javascript


输出
Altitude= 1.32, Area= 1.98

时间复杂度: O(log n)
辅助空间: O(1)