求三角形面积java
时间: 2023-11-12 22:56:21 浏览: 64
可以使用以下代码求解三角形面积:
```java
public static double triangleArea(double a, double b, double c) {
double s = (a + b + c) / 2;
return Math.sqrt(s * (s - a) * (s - b) * (s - c));
}
```
其中,a、b、c分别表示三角形的三条边长。
相关问题
海伦公式求三角形面积java
以下是使用海伦公式求三角形面积的Java代码:
```java
public class Point {
private double x;
private double y;
public Point(double x, double y) {
this.x = x;
this.y = y;
}
public double getX() {
return x;
}
public double getY() {
return y;
}
}
public class Triangle {
private Point a;
private Point b;
private Point c;
public Triangle(Point a, Point b, Point c) {
this.a = a;
this.b = b;
this.c = c;
}
public double getPerimeter() {
double ab = Math.sqrt(Math.pow(a.getX() - b.getX(), 2) + Math.pow(a.getY() - b.getY(), 2));
double bc = Math.sqrt(Math.pow(b.getX() - c.getX(), 2) + Math.pow(b.getY() - c.getY(), 2));
double ac = Math.sqrt(Math.pow(a.getX() - c.getX(), 2) + Math.pow(a.getY() - c.getY(), 2));
return ab + bc + ac;
}
public double getArea() {
double ab = Math.sqrt(Math.pow(a.getX() - b.getX(), 2) + Math.pow(a.getY() - b.getY(), 2));
double bc = Math.sqrt(Math.pow(b.getX() - c.getX(), 2) + Math.pow(b.getY() - c.getY(), 2));
double ac = Math.sqrt(Math.pow(a.getX() - c.getX(), 2) + Math.pow(a.getY() - c.getY(), 2));
double p = (ab + bc + ac) / 2;
return Math.sqrt(p * (p - ab) * (p - bc) * (p - ac));
}
}
public class Test {
public static void main(String[] args) {
Point a = new Point(0, 0);
Point b = new Point(3, 0);
Point c = new Point(0, 4);
Triangle triangle = new Triangle(a, b, c);
System.out.println("Perimeter: " + triangle.getPerimeter()); // 输出:Perimeter: 12.0
System.out.println("Area: " + triangle.getArea()); // 输出:Area: 6.0
}
}
```
Java求三角形面积
Java求三角形面积的方法有多种,以下是其中一种方法的代码示例:
```
import java.util.Scanner;
public class TriangleArea {
public static void main(String[] args) {
double a, b, c, s, area;
Scanner sc = new Scanner(System.in);
System.out.print("请输入三角形的第一个边长:");
a = sc.nextDouble();
System.out.print("请输入三角形的第二个边长:");
b = sc.nextDouble();
System.out.print("请输入三角形的第三个边长:");
c = sc.nextDouble();
if (a + b > c && b + c > a && a + c > b) {
s = (a + b + c) / 2;
area = Math.sqrt(s * (s - a) * (s - b) * (s - c));
System.out.println("三角形的面积为:" + area);
} else {
System.out.println("无法构成三角形!");
}
}
}
```
该代码首先通过Scanner类获取用户输入的三角形三边长,然后判断是否能构成三角形,如果可以,则计算出半周长s和面积area,并输出结果;如果不能,则输出无法构成三角形的提示信息。