用switch方法写出由键盘输入任意三个数,计算以这三个数为边长的三角形周长先判断是否为三角形
时间: 2023-04-03 21:05:20 浏览: 139
可以回答这个问题。以下是代码:
#include <stdio.h>
int main() {
int a, b, c;
printf("请输入三个数,用空格隔开:");
scanf("%d %d %d", &a, &b, &c);
if (a + b > c && a + c > b && b + c > a) {
int perimeter = a + b + c;
printf("这是一个三角形,周长为:%d\n", perimeter);
} else {
printf("这不是一个三角形\n");
}
return 0;
}
相关问题
用switch方法写出由键盘输入任意三个数,计算以这三个数为边长的三角形周长
好的,我可以回答这个问题。请看下面的代码:
```
#include <stdio.h>
int main() {
int a, b, c;
printf("请输入三个整数,用空格隔开:");
scanf("%d %d %d", &a, &b, &c);
int perimeter = a + b + c;
printf("三角形的周长是:%d\n", perimeter);
return 0;
}
```
以上代码使用了 `scanf` 函数从键盘读入三个整数,然后计算它们的和作为三角形的周长,并使用 `printf` 函数输出结果。
定义一个三角形类myTriangle并在另一类中使用,其中myTriangle类包含边长a,b,c三个私有成员变量,和计算面积、周长、是否为等边三角形、修改a,b,c等方法。要求另一个类中使用myTriangle的方法,且能获取、修改a,b,c的值。
首先,我们可以定义一个名为`MyTriangle`的类,它代表一个三角形,包含三个私有成员变量`_a`, `_b`, 和 `_c`,分别表示三角形的三条边长。这个类还需要提供一些公共方法:
```java
public class MyTriangle {
private double _a;
private double _b;
private double _c;
// 构造函数
public MyTriangle(double a, double b, double c) {
if (a + b > c && a + c > b && b + c > a) {
_a = a;
_b = b;
_c = c;
} else {
throw new IllegalArgumentException("Invalid triangle sides");
}
}
// 计算面积的方法
public double getArea() {
double s = (_a + _b + _c) / 2; // 半周长
return Math.sqrt(s * (s - _a) * (s - _b) * (s - _c));
}
// 计算周长的方法
public double getPerimeter() {
return _a + _b + _c;
}
// 判断是否为等边三角形的方法
public boolean isEquilateral() {
return _a == _b && _b == _c;
}
// 修改边长的方法
public void setSideLength(double newA, double newB, double newC) {
if (newA + newB > newC && newA + newC > newB && newB + newC > newA) {
_a = newA;
_b = newB;
_c = newC;
} else {
throw new IllegalArgumentException("Invalid side lengths");
}
}
// 获取边长的方法
public double getSideLength(int i) {
switch (i) {
case 0:
return _a;
case 1:
return _b;
case 2:
return _c;
default:
throw new IllegalArgumentException("Invalid index for side length");
}
}
}
```
然后,在另一个类中,我们可以实例化`MyTriangle`对象并操作它的属性和方法:
```java
public class MainClass {
public static void main(String[] args) {
MyTriangle triangle = new MyTriangle(3.0, 4.0, 5.0); // 创建一个直角三角形
System.out.println("Area: " + triangle.getArea());
System.out.println("Perimeter: " + triangle.getPerimeter());
// 判断是否为等边三角形
if (triangle.isEquilateral()) {
System.out.println("It's an equilateral triangle.");
} else {
System.out.println("It's not an equilateral triangle.");
}
// 修改边长
triangle.setSideLength(6.0, 7.0, 8.0);
System.out.println("After modification, sides are: " + triangle.getSideLength(0) + ", "
+ triangle.getSideLength(1) + ", " + triangle.getSideLength(2));
// 获取边长
try {
System.out.println("Side 0 length: " + triangle.getSideLength(0));
} catch (IllegalArgumentException e) {
System.out.println(e.getMessage());
}
}
}
```
阅读全文
相关推荐
![-](https://img-home.csdnimg.cn/images/20241231045021.png)
![-](https://img-home.csdnimg.cn/images/20241231044833.png)
![-](https://img-home.csdnimg.cn/images/20241231044937.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![doc](https://img-home.csdnimg.cn/images/20241231044833.png)
![-](https://img-home.csdnimg.cn/images/20241231044930.png)
![-](https://img-home.csdnimg.cn/images/20241231044930.png)
![-](https://img-home.csdnimg.cn/images/20241226111658.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)