题目描述
一个三角形的三边长分别是 a、b、c,那么它的面积为 p(p−a)(p−b)(p−c),其中 p=21(a+b+c)。输入这三个数字,计算三角形的面积,四舍五入精确到 1 位小数。
输入格式
第一行输入三个实数 a,b,c,以空格隔开。
输出格式
输出一个实数,表示三角形面积。精确到小数点后 1 位。
输入输出样例
输入 #1复制
3 4 5
输出 #1复制
6.0
说明/提示
数据保证能构成三角形,0≤a,b,c≤1000,每个边长输入时不超过 2 位小数。
代码:
import math # 导入 math 模块,用于数学计算(如平方根)# 读取用户输入并按空格分割成列表,然后将列表中的元素转换为浮点数
# 示例输入:"3 4 5" → [3.0, 4.0, 5.0]
a, b, c = map(float, input().split()) # 计算三角形的半周长
p = (a + b + c) / 2 # 半周长公式:(a + b + c) / 2# 使用海伦公式计算三角形面积
# 海伦公式:面积 = sqrt(p * (p - a) * (p - b) * (p - c))
ares = math.sqrt(p * (p - a) * (p - b) * (p - c))# 输出面积,保留 1 位小数
print(f"{ares:.1f}") # 示例输出:6.0
代码功能说明
-
输入处理:
-
使用
input().split()
读取用户输入并按空格分割成列表。 -
使用
map(float, ...)
将列表中的元素转换为浮点数。
-
-
半周长计算:
-
使用公式
p = (a + b + c) / 2
计算三角形的半周长。
-
-
面积计算:
-
使用海伦公式计算三角形面积:
面积=p×(p−a)×(p−b)×(p−c)面积=p×(p−a)×(p−b)×(p−c) -
使用
math.sqrt()
计算平方根。
-
-
输出结果:
-
使用格式化字符串
f"{ares:.1f}"
输出面积,保留 1 位小数。
-