作业帮 > 综合 > 作业

设计一个圆类,该类具有圆点坐标及半径属性 定义一个Relation函数评断两个圆之间的位置关系.(外离,外

来源:学生作业帮 编辑:搜搜做题作业网作业帮 分类:综合作业 时间:2024/07/15 17:16:18
设计一个圆类,该类具有圆点坐标及半径属性 定义一个Relation函数评断两个圆之间的位置关系.(外离,外
切,相交,内切,内含)
(2)在主函数定义一个有三个元素的圆类对象数组,并进行初始化.
(3)在主函数调用Relation函数判断三个圆之间的关系,并输出.
设计一个圆类,该类具有圆点坐标及半径属性 定义一个Relation函数评断两个圆之间的位置关系.(外离,外
#include "iostream"
#include "cmath"
using namespace std;
class Circle
{
public:
 Circle(double x=0,double y=0,double r=0);
 friend void Relation(Circle c1,Circle c2);
private:
 double x,y,r;
};
Circle::Circle(double x,double y,double r)
{
 this->x=x;
 this->y=y;
 this->r=r;
}
void Relation(Circle c1,Circle c2)
{
     double pToP;
  double twoR1;
  double twoR2;
  pToP=sqrt(pow(c1.x-c2.x,2)+pow(c1.y-c2.y,2));        //圆心距
  twoR1=c1.r+c2.r;          //两圆半径和
  twoR2=fabs(c1.r-c2.r);      //两圆半径差的绝对值
  if(pToP==twoR1)
   cout<<"两圆外切"<<endl;
  else if(pToP>twoR1)
   cout<<"两圆外离"<<endl;
  else if(pToP==twoR2)
   cout<<"两圆内切"<<endl;
  else if(pToP>twoR2 && pToP<twoR1)
   cout<<"两圆相交"<<endl;
  else if(pToP<twoR2)
   cout<<"两圆内含"<<endl;
}
int main()
{
   Circle c1(1,2,3),c2(1,0,4),c3(0,2,4);
   Circle c[3]={c1,c2,c3};
   Relation(c[0],c[1]);
   Relation(c[1],c[2]);
   Relation(c[2],c[0]);
}
设计一个圆类,该类具有圆点坐标及半径属性 定义一个Relation函数评断两个圆之间的位置关系.(外离,外 设计一个描述圆的circle类,该类包括的属性有:圆心坐标x,y和圆的半径radius;包括的方法有:设置圆的坐标的方法 用Java程序编写定义一个Circle类,该类拥有一个存储圆半径的属性(Radius),并撰写设置、取得圆半径、计算圆周 定义一个点类,它包含两个成员变量:纵坐标和横坐标.通过继承一个点类设计一个圆类,新增属性有半径? 一个Point(点)类,该类具有x,y(表示点的横、纵坐标)两个属性,并定义两个构造方法,一个无参数,将x,y均设置为0 在point类基础上设计一个圆类,该类可以表示圆的位置(point类对象)和大小(半径)可以计算圆的面积和周长c++ 在point类基础上设计一个圆类,该类可以表示圆的位置(point类对象)和大小(半径)可一计算圆的面积和周长 先设计点类(Point),该类的数据成员包括一个点的x坐标和y坐标,成员函数实现的 用c++编程.定义一个类point,该类是平面坐标系上坐标点的抽象表示.类具有的功能包括: 写出一个Tri(三角形)类,该类具有x,y,z(表示三个边的长)3个属性,并定义两个个构造方法,一个无参数,将x,y,z 定义一个类LOCATION,用数据成员x,y表示该类对象在二维坐标系的坐标位置 C++实现:5.定义一个具有多态性的基类Shape,派生出以下一些类,圆Circle类(坐标点和半径),长方形Recta