/*
【项目2 - 修旱冰场】
(Circle类)一个圆形的旱冰场地,
场地内抹水泥,造价为每平方米20元,
围栏用木条围成,每米造价35元。
设计一个Circle类,可以求出圆的面积和边长,
进而支持求出旱冰场的等价。
请在下面提示的基础上完成程序,其中需要做的工作包括:
(1)在类声明中声明相关的公共成员函数;
(2)在类声明和main()函数之间,定义声明的成员函数。
*/
#include <iostream>
using namespace std;
class Circle //定义一个旱冰场的类
{
public:
void set_r(double r);
double find_area();
double find_perimeter();
private:
double radius;
};
double pi; //定义π值.
void Circle::set_r(double r) //将半径放进类中
{
radius=r;
}
double Circle::find_area() //求面积
{
return pi*radius*radius;
}
double Circle::find_perimeter() //求周长
{
return 2*pi*radius;
}
int main()
{
double r;
Circle demo;
char choice; //设置循环。
double price_meter,price_squaremeter;
cout<<"请输入π取值: ";
cin>>pi;
cout<<"请输入旱冰场铺设每平方米的价格: ";
cin>>price_squaremeter;
cout<<"请输入旱冰场铺设周边木条每米的价格: ";
cin>>price_meter;
do
{
cout<<"*************************************"<<endl;
cout<<"请输入旱冰场半径: ";
cin>>r;
demo.set_r(r);
cout<<"旱冰场面积为: "<<demo.find_area()<<endl;
cout<<"旱冰场周长为: "<<demo.find_perimeter()<<endl;
cout<<"旱冰场造价为: "<<demo.find_area()*price_squaremeter+demo.find_perimeter()*price_meter<<endl;
cout<<"*************************************"<<endl;
cout<<"是否想继续计算?继续则按任意键,退出则按N: ";
cin>>choice;
}while(choice!='N'&&choice!='n');
cout<<endl;
return 0;
}