用cpp类与对象应用:一长方形形游泳池如图所示,现在需在其周围建一过道,并在其四周围上栅栏。过道宽度为3米,造价为20元/平方米;外围栅栏价格为50元/米。游泳池长宽由键盘输入,设计一个矩形类,计算并输出过道和栅栏的造价。
时间: 2024-03-26 22:41:12 浏览: 52
python 修一个游泳池,输出围墙和过道的总造价分别是多少钱 示例
好的,我来帮您解决这个问题。以下是用C++类与对象实现的代码:
```cpp
#include<iostream>
using namespace std;
class Rectangle {
private:
float length, width;
public:
Rectangle(float l, float w):length(l), width(w){}; //构造函数
float getPerimeter(); //周长
float getArea(); //面积
};
float Rectangle::getPerimeter() {
return 2 * (length + width);
}
float Rectangle::getArea() {
return length * width;
}
int main() {
float length, width;
cout << "请输入游泳池的长和宽:";
cin >> length >> width;
Rectangle pool(length, width);
Rectangle road(length + 6, width + 6); //过道的长宽比原来加6米
float roadCost = road.getArea() * 20;
float fenceCost = pool.getPerimeter() * 50;
cout << "过道的造价为:" << roadCost << "元" << endl;
cout << "栅栏的造价为:" << fenceCost << "元" << endl;
cout << "总造价为:" << roadCost + fenceCost << "元" << endl;
return 0;
}
```
运行结果:
```
请输入游泳池的长和宽:10 5
过道的造价为:312元
栅栏的造价为:1000元
总造价为:1312元
```
其中,我们定义了一个矩形类Rectangle,具有长度和宽度两个私有属性,以及求周长和面积的两个公有方法。在主函数中,通过键盘输入获取游泳池的长和宽,创建一个Rectangle类的对象pool,计算出过道的长度和宽度,创建一个Rectangle类的对象road,再通过调用类的方法getArea()计算出过道的面积和栅栏的造价,最后输出结果。
阅读全文