浙大PTA 第2章-12 输出三角形面积和周长 (15 分)

这是一道来自浙大Python题目集的PTA题目,要求根据输入的三角形三边a、b、c计算并输出面积和周长。题目指出任意两边之和必须大于第三边,并提供了面积计算公式。程序需要处理输入的三个正整数,如果它们能构成三角形,则输出其面积和周长,否则输出提示信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

全题解析链接

浙大Python题目集 PTA95题全部解析


本题要求编写程序,根据输入的三角形的三条边a、b、c,计算并输出面积和周长。注意:在一个三角形中, 任意两边之和大于第三边。三角形面积计算公式:area=√​s(s−a)(s−b)(s−c)​​​,其中s=(a+b+c)/2。

输入格式:

输入为3个正整数,分别代表三角形的3条边a、b、c。

输出格式:

如果输入的边能构成一个三角形,则在一行内,按照

area = 面积; perimeter = 周长

的格式输出,保留两位小数。否则,输出

These sides do not correspond to a valid triangle

输入样例1:

5 5 3

输出样例1:

area = 7.15; perimeter = 13.00

输入样例2:

1 4 1

输出样例2:

These sides do not correspond to 
### 计算三角形面积周长 为了计算给定三边的三角形面积周长,可以采用海伦公式来进行面积计算。当给出三角形的三条边 \( a \), \( b \),以及 \( c \) 后,先验证这些边能否构成一个有效的三角形——即任意两边之需大于第三边[^3]。 一旦确认能够形成三角形,则可继续执行如下操作: - **周长** 的计算相对简单,只需将三个边相加即可得到总长度。 \[ P = a + b + c \] - 对于 **面积** ,则应用海伦公式的变体形式: 设半周长 \( s = (a + b + c) / 2 \) 那么, \[ area=\sqrt{s(s-a)(s-b)(s-c)} \] 下面是一个完整的C语言实现例子,用于读取用户输入的三个浮点数作为三角形的边,并打印出其对应的面积周长[^1]: ```c #include <stdio.h> #include <math.h> int main() { double a, b, c; printf("请输入三角形的三条边:\n"); scanf("%lf %lf %lf", &a, &b, &c); // 判断是否能三角形 if ((a + b > c) && (a + c > b) && (b + c > a)) { double p = a + b + c; // 周长 double s = p / 2.0; double area = sqrt(s * (s - a) * (s - b) * (s - c)); printf("三角形周长为 %.2f\n", p); printf("三角形面积为 %.2f\n", area); } else { printf("无法构成三角形。\n"); } return 0; } ``` 此代码片段展示了如何通过简单的条件语句检查输入的数据是否满足构建有效三角形的要求;接着利用标准库函数 `sqrt` 来完成平方运算以求得最终的结果。此外,在输出时保留两位小数以便更清晰地展示数值[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值