c,编写程序,计算三角形面积,要求: 从键盘输入三个整数作为三角形的三条边; 判断是否构成三角形,即任意两边和大于第三边,如果不能,则输出”不能构成三角形”,否则计算三角形面积,结果保留2位小数
时间: 2024-05-06 08:21:20 浏览: 168
。抱歉,我可以回答您的问题。请看下方的代码:
```python
a, b, c = map(int, input('请输入三角形的三条边(以空格分隔):').split())
if a + b > c and a + c > b and b + c > a:
p = (a + b + c) / 2
area = (p * (p - a) * (p - b) * (p - c)) ** 0.5
print('该三角形的面积是:%.2f' % area)
else:
print('不能构成三角形')
```
您可以将以上代码复制到您的编辑器中运行,输入三角形的三条边即可算出三角形面积。
相关问题
solidity 编写一个合约,由键盘输入三个整数作为三角形的三条边,判断是否能构成一个三角形,如能则判断是等边三角形、等腰三角形、直角三角形,还是其它一般的三角形。
以下是一个使用Solidity编写的合约,可以从键盘输入三个整数作为三角形的三条边,判断其是否能构成一个三角形,并判断其类型:
```
pragma solidity ^0.8.0;
contract Triangle {
function triangleType(uint a, uint b, uint c) public pure returns(string memory) {
if(a + b > c && a + c > b && b + c > a) {
if(a == b && b == c) {
return "Equilateral Triangle";
} else if(a == b || b == c || a == c) {
return "Isosceles Triangle";
} else if(a*a + b*b == c*c || a*a + c*c == b*b || b*b + c*c == a*a) {
return "Right Triangle";
} else {
return "Scalene Triangle";
}
} else {
return "Not a Triangle";
}
}
}
```
在这个合约中,我们定义了一个名为`triangleType`的函数,该函数接收三个参数`a`、`b`、`c`,分别代表三角形的三边。函数首先判断这三条边能否构成一个三角形,如果不能,则返回"Not a Triangle";如果可以,则进一步判断它是等边三角形、等腰三角形、直角三角形还是一般的三角形,并返回相应的字符串。
请注意,这个合约中我们使用了`pure`修饰符来表示这个函数不会修改任何状态变量,因此它可以被其他合约或者外部调用而不需要支付gas费用。
用solidity编写一个合约,由键盘输入三个整数作为三角形的三条边,判断是否能构成一个三角形,如能则判断是等边三角形、等腰三角形、直角三角形,还是其它一般的三角形
下面是一个用 Solidity 编写的智能合约,实现了输入三个整数作为三角形的三条边,判断是否能构成一个三角形,并判断是等边三角形、等腰三角形、直角三角形,还是一般的三角形。代码如下:
```
pragma solidity ^0.8.0;
contract Triangle {
function triangleType(uint a, uint b, uint c) public pure returns (string memory) {
if (a + b <= c || a + c <= b || b + c <= a) {
return "Not a triangle";
} else if (a == b && b == c) {
return "Equilateral triangle";
} else if (a == b || a == c || b == c) {
if (a * a + b * b == c * c || a * a + c * c == b * b || b * b + c * c == a * a) {
return "Isosceles and right triangle";
} else {
return "Isosceles triangle";
}
} else if (a * a + b * b == c * c || a * a + c * c == b * b || b * b + c * c == a * a) {
return "Right triangle";
} else {
return "General triangle";
}
}
}
```
在该合约中,`triangleType` 函数接受三个 `uint` 类型的参数,分别代表三角形的三条边。函数首先判断这三条边是否能组成一个三角形,如果不能,则返回 "Not a triangle",否则进一步判断三角形类型。如果三边相等,则为等边三角形;如果有两边相等,则为等腰三角形,再判断是否为直角三角形;如果三边都不相等,则为一般的三角形。
你可以将合约部署在以太坊网络上,并使用 Remix 等 Solidity 集成开发环境进行测试。
阅读全文