利用海伦公式计算面积
Java 版
public static double calcTriangleArea(double s1,double s2,double s3){
if(s1 < 0 || s2 < 0 || s3 < 0){
return 0;
}
if(!((s1 + s2 > s3) && (s1 + s3 > s2) && (s2 + s3 > s1))){
return 0;
}
if(!((s1 - s2 < s3) && (s2 - s1 < s3) && (s1 - s3 < s2) && (s3 - s1 < s2) && (s2 - s3 < s1) && (s3 - s2 < s1))){
return 0;
}
double s = (s1 + s2 + s3)/2;
double area = Math.sqrt(s * (s - s1) * (s - s2) * (s - s3));
return area;
}
JavaScript
function calcTriangleArea(s1, s2, s3) {
if (s1 < 0 || s2 < 0 || s3 < 0) {
return 0;
}
if (!((s1 + s2 > s3) && (s1 + s3 > s2) && (s2 + s3 > s1))) {
return 0;
}
if (!((s1 - s2 < s3) && (s2 - s1 < s3) && (s1 - s3 < s2) && (s3 - s1 < s2) && (s2 - s3 < s1) && (s3 - s2 < s1))) {
return 0;
}
let s = (s1 + s2 + s3) / 2;
let area = Math.sqrt(s * (s - s1) * (s - s2) * (s - s3));
return area;
}