📜  求三角形面积的Java程序(1)

📅  最后修改于: 2023-12-03 15:40:41.386000             🧑  作者: Mango

求三角形面积的Java程序

三角形是几何中的基本图形,计算其面积是几何学中的重要问题。在Java中,可以使用以下代码片段来计算任意三角形的面积。

方法一
import java.util.Scanner;

public class Main {
   public static void main(String[] args) {
      Scanner input = new Scanner(System.in);
      System.out.print("Enter the three points for a triangle: ");
      double x1 = input.nextDouble();
      double y1 = input.nextDouble();
      double x2 = input.nextDouble();
      double y2 = input.nextDouble();
      double x3 = input.nextDouble();
      double y3 = input.nextDouble();

      double side1 = Math.pow(Math.pow(x2 - x1, 2) + Math.pow(y2 - y1, 2), 0.5);
      double side2 = Math.pow(Math.pow(x3 - x2, 2) + Math.pow(y3 - y2, 2), 0.5);
      double side3 = Math.pow(Math.pow(x1 - x3, 2) + Math.pow(y1 - y3, 2), 0.5);

      double s = (side1 + side2 + side3) / 2;

      double area = Math.pow(s * (s - side1) * (s - side2) * (s - side3), 0.5);

      System.out.println("The area of the triangle is " + area);
   }
}
方法二
public class Main {
    public static void main(String[] args) {
        // 输入三角形三个顶点的坐标
        double x1 = 1.0, y1 = 10.0;
        double x2 = 50.0, y2 = 20.0;
        double x3 = 25.0, y3 = 100.0;
        // 根据三角形三个点坐标计算三边长度
        double a = Math.sqrt(Math.pow(x2 - x1, 2) + Math.pow(y2 - y1, 2));
        double b = Math.sqrt(Math.pow(x3 - x2, 2) + Math.pow(y3 - y2, 2));
        double c = Math.sqrt(Math.pow(x1 - x3, 2) + Math.pow(y1 - y3, 2));
        // 计算半周长
        double s = (a + b + c) / 2;
        // 计算三角形面积
        double area = Math.sqrt(s * (s - a) * (s - b) * (s - c));
        // 输出结果
        System.out.println("三角形的面积是:" + area);
    }
}
代码说明

以上两种方法均使用海龙公式(也称为裘德公式),通过三角形三边长度计算三角形面积。

在方法一中,通过Scanner类实现用户从键盘输入三个点坐标,然后通过Math类的sqrt()方法对边长进行计算。最后通过海龙公式计算出三角形面积,并输出结果。

在方法二中,直接在程序中给出三个点的坐标。然后通过Math类的sqrt()方法计算出三边长度,之后计算半周长和三角形面积,并输出结果。

两种方法均简洁明了,易于理解。