2 / 2 设计一个类,可以计算圆和长方形的面积
时间: 2023-03-29 15:03:30 浏览: 73
你好,我可以回答这个问题。设计一个类,可以计算圆和长方形的面积,可以这样实现:
class Shape {
public:
virtual double getArea() = ;
};
class Circle : public Shape {
public:
Circle(double r) : radius(r) {}
double getArea() override {
return 3.14 * radius * radius;
}
private:
double radius;
};
class Rectangle : public Shape {
public:
Rectangle(double l, double w) : length(l), width(w) {}
double getArea() override {
return length * width;
}
private:
double length;
double width;
};
这里定义了一个抽象基类 Shape,包含一个纯虚函数 getArea(),表示计算面积。然后定义了两个派生类 Circle 和 Rectangle,分别表示圆和长方形,实现了 getArea() 函数。在主函数中,可以通过 Shape 指针指向 Circle 或 Rectangle 对象,调用 getArea() 函数计算面积。
相关问题
设计一个名为Area的类,可以计算圆和长方形的面积
好的,我可以回答这个问题。设计一个名为Area的类,可以计算圆和长方形的面积,可以这样实现:
```c
#include <stdio.h>
#define PI 3.1415926
typedef struct {
double width;
double height;
} Rectangle;
typedef struct {
double radius;
} Circle;
double rectangle_area(Rectangle r) {
return r.width * r.height;
}
double circle_area(Circle c) {
return PI * c.radius * c.radius;
}
int main() {
Rectangle r = {3., 4.};
Circle c = {2.};
printf("Rectangle area: %f\n", rectangle_area(r));
printf("Circle area: %f\n", circle_area(c));
return ;
}
```
这个程序定义了一个名为Area的类,其中包含了Rectangle和Circle两个结构体,分别表示长方形和圆。然后定义了两个函数rectangle_area和circle_area,用于计算长方形和圆的面积。最后在main函数中,创建了一个长方形和一个圆,并分别调用了rectangle_area和circle_area函数,输出它们的面积。
Java设计一个名为Area的类,可以计算圆和长方形的面积
好的,我可以回答这个问题。以下是Java中Area类的代码:
```
public class Area {
public static double circle(double radius) {
return Math.PI * radius * radius;
}
public static double rectangle(double length, double width) {
return length * width;
}
}
```
使用这个类,你可以计算圆和长方形的面积。例如,要计算半径为5的圆的面积,可以使用以下代码:
```
double circleArea = Area.circle(5);
```
要计算长为10,宽为5的长方形的面积,可以使用以下代码:
```
double rectangleArea = Area.rectangle(10, 5);
```
希望这可以帮助你!