Request:
有一个圆形的旱冰场地,场地内抹水泥,造价为每平方米M元,围栏用木条围成,每米造价N元,输入旱冰场半径,用程序计算出其造价。
一级提示:
先定义类,确定其数据成员和成员函数。在这里要定义的旱冰场类,实际我们只关心其面积和周长,根据面积计算场地内抹水泥的造价,根据周长计算围栏的造价。有了类的定义,在main函数中定义该类对象,调用成员函数即可以完成求解。
二级提示:
实际上,对于旱冰场,我们只关心它就是一个圆。这就是设计中抓住了本质。于是,设计一个Circle(圆)类,数据成员为圆的半径,Circle类还提供计算圆的面积和边长的成员函数。在main函数中,定义一个Circle类的对象,调用成员函数求出旱冰场的造价。
#include <iostream>
#define pi 3.141592653
using namespace std;
const int M=20;
const int N=35;
class Circle{
private:
double radius;
public:
void setRadius(double);
double area();
double circumstance();
};
void Circle::setRadius(double R){
radius=R;
}
double Circle::area(){
return pi*radius*radius;
}
double Circle::circumstance(){
return 2*pi*radius;
}
int main(){
double r;
cout<<"请输入旱冰场的半径: ";
cin>>r;
Circle c;
c.setRadius(r);
cout<<"旱冰场造价为: "<<M*c.area()+N*c.circumstance()<<"元"<<endl;
return 0;
}
Result: