题目
要修建一个泳池,请根据泳池的面积,计算出所需要的栅栏造价和走道造价。
过道水泥单价:20
栅栏的单价 :35
//4.3.cpp
#include <iostream>
using namespace std;
const float PI = 3.141593;//给出PI的值
const float FENCE_PRICE = 35;//栅栏的单价
const float CONCRETE_PRICE = 20;//过道水泥单价
class Circle{ //声明定义类Circle 及其数据和方法
public://外部接口
explicit Circle(float r); //构造函数
inline float circumference() const; //计算圆的周长
inline float area() const; //计算圆的面积
private:
float radius;
};
//类的实现
Circle::Circle(float r):radius(r){}
//计算圆的周长
inline float Circle::circumference() const{
return 2*PI*radius;
}
//计算圆的面积
inline float Circle::area() const{
return PI*radius*radius;
}
//主函数的实现
int main(){
float radius;
cout<<"Enter the radius of the pool:"; //提示用户输入半径
cin >> radius;
Circle pool(radius),poolRim(radius+3);//泳池边界和栅栏
//计算栅栏造假并输出
float fenceCost = poolRim.circumference()*FENCE_PRICE;
cout<<"Fencing Cost is $"<<fenceCost<<endl;
//计算过道造价并输出
float concreteCost = (poolRim.area()-pool.area())*CONCRETE_PRICE;
cout<<"ConcreteCost Cost is $"<<concreteCost<<endl;
}