题目描述
一个三角形的三边长分别是 𝑎a、𝑏b、𝑐c,那么它的面积为 𝑝(𝑝−𝑎)(𝑝−𝑏)(𝑝−𝑐)p(p−a)(p−b)(p−c),其中 𝑝=12(𝑎+𝑏+𝑐)p=21(a+b+c)。输入这三个数字,计算三角形的面积,四舍五入精确到 11 位小数。
输入格式
第一行输入三个实数 𝑎,𝑏,𝑐a,b,c,以空格隔开。
输出格式
输出一个实数,表示三角形面积。精确到小数点后 11 位。
输入输出样例
输入 #1复制
3 4 5
输出 #1复制
6.0
说明/提示
数据保证能构成三角形,0≤𝑎,𝑏,𝑐≤10000≤a,b,c≤1000,每个边长输入时不超过 22 位小数。
代码:
#include<iostream>
#include<cmath>
#include<cstdio>
using namespace std;
int main() {
double a, b, c, s; cin >> a >> b >> c;
double p = (a + b + c) * (0.5);
s = sqrt(p * (p - a) * (p - b) * (p - c));
printf("%.1f", s);
}