1. 程式人生 > >C++ Point類求兩點距離

C++ Point類求兩點距離

#include<iostream>
#include<math.h>
using namespace std;

class Point{
private: 
	double X,Y,Z;
	
public:
	Point(double X=0,double Y=0,double Z=0){
		this->X=X,this->Y=Y,this->Z=Z;                           //建構函式,初始化
	}

	~Point(){}

	void SetPoint(){
		cout<<"請輸入一個點的座標:"<<endl;               //手動設定點的座標
		cin>>X>>Y>>Z;

	}

	double Distance(Point& Point){                               //物件的引用,返回兩點距離
		return sqrt(pow(X-Point.X,2)+pow(Y-Point.Y,2)+pow(Z-Point.Z,2)); 
	}
};

int main(){
	Point P1,P2;
	for(int i=0;i<=100;i++){                                         //使用迴圈,連續輸入
		P1.SetPoint();                                                 //設定第一個點的座標
		P2.SetPoint();                                                  //設定第二個點的座標
		double d=P1.Distance(P2);                             //呼叫Distance函式
		cout<<"這兩點間的距離為:"<<d<<endl;
	}
		return 0;
}

執行效果圖