背景:
海伦公式又译作希伦公式、海龙公式、希罗公式、海伦—秦九韶公式。它是利用三角形的三条边的边长直接求三角形面积的公式。它的特点是形式漂亮,便于记忆。
相传这个公式最早是由古希腊数学家阿基米德得出的,而因为这个公式最早出现在海伦的著作《测地术》中,所以被称为海伦公式。
中国秦九韶也得出了类似的公式,称三斜求积术。
海伦公式的表示:
假设在平面内,有一个三角形,边长分别为a、b、c,三角形的面积S可由以下公式求得:
而公式里的p为半周长(周长的一半):
提示 各种编程语言求平方根的方法是:
(1)在Java语言中,调用Math类的静态方法sqrt(double d),返回一个double数据类型的值;
(2)在C语言中, 头文件:#include <math.h> ,sqrt() 函数用来求给定值的平方根,其原型为: double sqrt(double x);
(3)在Python语言中,导入 math 模块:import math,通过静态对象调用方法sqrt(),形式为:math.sqrt( x )。
输入格式:
输入若干行。每行有3个数值。
输出格式:
对于每一行输入,有一行输出。
若三个数值能够构成三角形的边,则计算它的面积,保留2位小数;如果不能构造三角形,则输出“Input Error!"。
输入样例:
3 4 5.0
1 2 3.0
-3 0 -2
输出样例:
6.00
Input Error!
Input Error!
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner reader=new Scanner(System.in);
while (reader.hasNext())
{
double a,b,c;
a= reader.nextDouble();
b= reader.nextDouble();
c= reader.nextDouble();
if(a+b>c&&a>0&&b>0&&c>0)
{
double p=(a+b+c)/2.0;
double s=Math.sqrt(p*(p-a)*(p-b)*(p-c));
System.out.printf("%.2f\n",s);
}
else
System.out.printf("Input Error!\n");
}
reader.close();
}
}