📅  最后修改于: 2023-12-03 15:40:41.386000             🧑  作者: Mango
三角形是几何中的基本图形,计算其面积是几何学中的重要问题。在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()方法计算出三边长度,之后计算半周长和三角形面积,并输出结果。
两种方法均简洁明了,易于理解。