C++中定义一个平面坐标中的点D的类包含X,Y

定义一个平面坐标中的点D的类包含X、Y,计算两点间的距离成员函数,另一个类三角形,以三个点的数据对象描述三个点,再计算面积的成员函数

首先计算两个点之间的距离函数:

double distance(double x0,double y0,double x1,double y1){
    return sqrt((x0-x1)*(x0-x1)+(y0-y1)*(y0-y1));
}


求三角形面积,这个可以用海伦公式去计算,海伦公式是三角形面积与三角形周长之间的关系:

已知三角形三边a,b,c,则 (海伦公式)(p=(a+b+c)/2)
  S=√[p(p-a)(p-b)(p-c)]

a,b,c是三遍的边长,通过distance函数求得

double Circumference(double x0,double y0,double x1,double y1,double x2,double y2){
    double a = distance(x0,y0,x1,y1);
    double b = distance(x0,y0,x2,y2);
    double c = distance(x1,y1,x2,y2);
    double p = (a+b+c)/2;
    double s = sqrt(p*(p-a)*(p-b)*(p-c));
    return s;
}

如此即可求出面积

温馨提示:内容为网友见解,仅供参考
无其他回答

C++中定义一个平面坐标中的点D的类包含X,Y
double y2){ double a = distance(x0,y0,x1,y1); double b = distance(x0,y0,x2,y2); double c = distance(x1,y1,x2,y2); double p = (a+b+c)\/2; double s = sqrt(p*(p-a)*(p-b)*(p-c)); return...

C++:编写一个点类Point,再由它派生线段类Line。
} class Line:public Point { private:Point a,b;public:Line(float x1,float y1,float x2,float y2):a(x1,y1),b(x2,y2){} float Display();};float Line::Display()\/\/这个地方不知道你要输出的是什么,但从你的源程序中知道要返回一个值,所以,我返回了线段的距离 { return a.Distan...

定义一个Point类,其属性包括点的坐标,提供计算两点之间的距离
Point(double a,double b){x=a;y=b;} double distance(Point& p1,Point& p2){return sqrt((p1.x-p2.x)*(p1.x-p2.x)+(p1.y-p2.y)*(p1.y-p2.y));double distance(Point& p){return sqrt((x-p.x)*(x-p.x)+(y-p.y)*(y-p.y));} };class Rectangle {Point le...

简单c++题。定义一个类Point,并定义成员函数doubleDistance(const& Po...
public double x,y;};void main(){ Point p1(2,-3.5),p2(-2.1,3);cout<<"距离为:"<<p1.Distance(p2)<<endl;}

C++定义一个点类一个距离类求两点之间的距离
include <math.h>#include <iostream>\/\/点类class POINT_{public:POINT_(float a,float b):x(a),y(b){}private:\/\/点 有x y坐标float x;float y;friend class DISTANSE;\/\/声明距离类为友元;};\/\/距离类class DISTANSE{\/\/求距离要有两点;POINT_ p_1;POINT_ p_2;public:DISTANSE(...

c++ API 在屏幕上(或窗口中)的(x,y)坐标绘制一个点
C++没有自己定义的画点函数,画点、画线等是属于图象库的内容,跟显示设备,如LCD相关。下面是调用Windows的API实现画点的。include<windows.h> int main( void ){ \/\/ 获取一个可供画图的DC,我这里就直接用桌面算了 HDC hdc = GetWindowDC( GetDesktopWindow() );\/\/ 创建红色1像素宽度的实线...

用c++怎样判断一个数字的数据类型
貌似c++没有关于数据类型检查的函数啊,感觉越是底层的东西 人需要做的就越多。c也是一样没有那种函数,不过还是可以判断的。在 c++ 中你声明了那个变量,它的类型已经给出,可以加上 IF语句判断 是否输入值在类型的范围之内,入果在,就是符合类型。但要考虑到 隐式类型转换 ...

定义一个点类,输入坐标上的两个点,计算出两点之间的距离,并输出
class point{ int x;int y;\/\/坐标为(x,y)public:void prin(int a, int b)\/\/输入数据项函数{cin >> a;cin >> b;this->x = a;this->y = b;} };double jisuan(int a, int b, int c, int d)\/\/计算两点之间距离的功能 {return (sqrt((a-c)*(a-c)+(b-d)*(b-d))...

c++中类的定义问题
在块中的变量会首先被删除,嵌套的块变量自里而外删除。在本程序中,解释如下:b、c、d是依次定义的,按顺序定义;d在main函数里层的块中定义,因此最早被删除;x是f函数的局部变量,调用f时定义 f调用完后,x被删除;c是main函数的局部变量,main函数执行完后被删除;b是全局变量,最后被删除。

求助:编写一个c++程序,提示用户输入一个点(x,y)——
include <iostream>#include <cmath>using namespace std;int main(){float x,y,distance;cout<<"(x,y)=";cin>>x>>y;distance=sqrt(x*x+y*y);if(distance>10)cout<<"("<<x<<","<<y<<")"<<"在圆外\\n";else if(distance == 10)cout<<"("<<x<<","<<y<<")"<<"在...

相似回答