编写一个程序计算圆,圆内接正方形,和圆外切正方形面积和周长

金枪-鱼 2005-04-06 08:17:34
题目:编写一个程序计算圆, 输入圆的半径,得到圆内接正方形,和圆外切正方形的面积和周长.
要求:
1.由于要计算圆和正方形的面积和周长所以可把圆定义为一个类它包含的数据成员为长度,球面积和周长定义为虚函数
2.定义好圆类型后,把圆类,正方形类定义为圆形为派生类,在这些类中,有新定义的构成函数,求周长的函数.
3.在完成上述要求后再将圆形类定义中求面积和周长的函数均定义成虚函数重新编写该程序.
...全文
1890 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
zengwujun 2005-04-06
  • 打赏
  • 举报
回复
#include <iostream.h>
#include <math.h>
#include <stdio.h>
#define PI 3.14159;

class Shape
{
public:
virtual double Area()=0;
virtual double Perimeter()=0;
};

class Circul : public Shape
{
private:
double m_Radius;
public:
Circul(double Radius):m_Radius(Radius){};
virtual double Area()
{return m_Radius * m_Radius * PI;}
virtual double Perimeter()
{return 2 * m_Radius * PI;}
};

class Square : public Shape
{
private:
double m_side;
public:
Square(double side):m_side(side){};
virtual double Area()
{return m_side * m_side;}
virtual double Perimeter()
{return 4 * m_side;}
};

void main()
{
float radius;
printf("输入圆半径:\n");
scanf("%f",&radius);
Circul a(radius);
Square b1(radius*sqrt(2));
Square b2(radius*2);
cout<<"圆面积:"<<a.Area()<<"\n圆周长:"<<a.Perimeter()<<endl;
cout<<"内切正方形面积:"<<b1.Area()<<"\n内切正方形周长:"<<b1.Perimeter()<<endl;
cout<<"外接正方形面积:"<<b2.Area()<<"\n外接正方形周长:"<<b2.Perimeter()<<endl;
}
pcboyxhy 2005-04-06
  • 打赏
  • 举报
回复
如果要深入研究的话
就这道题还可以出论文

关于 抽象模型 的问题
lantersen 2005-04-06
  • 打赏
  • 举报
回复
自力更生!
zengwujun 2005-04-06
  • 打赏
  • 举报
回复
圆内接正方形边长sqrt(2)R,面积2R^2,周长4sqrt(2)R
圆外切正方形边长2R,面积4R^2,周长8R
healer_kx 2005-04-06
  • 打赏
  • 举报
回复
So Easy.
自己做! 然后大家帮你看。

65,195

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧