假设这两点为A(x1,y1)和B(x2,y2),则向量AB的坐标为AB=(x2-x1,y2-y1)。
要求向量AB与x轴正方向的夹角,即求向量AB与x轴正方向的夹角θ。
根据向量积的定义,有:
AB·x=(x2-x1) * 1=x2-x1
又因为向量AB与x轴正方向的夹角θ的余弦值为:
cosθ=AB·x/|AB|
其中,|AB|为向量AB的长度。
因此,所求夹角θ的余弦值为:
cosθ=(x2-x1)/|AB|
以下是C++代码实现:
#include <iostream>
#include <cmath>
using namespace std;
int main() {
double x1, y1, x2, y2;
cout << "请输入第一个点的坐标(x1, y1): ";
cin >> x1 >> y1;
cout << "请输入第二个点的坐标(x2, y2): ";
cin >> x2 >> y2;
double ABx = x2 - x1;
double ABy = y2 - y1;
double ABlen = sqrt(ABx * ABx + ABy * ABy);
double cosTheta = ABx / ABlen;
double theta = acos(cosTheta); // 弧度制
double thetaDeg = theta * 180.0 / M_PI; // 角度制
cout << "向量AB与x轴正方向的夹角为:" << thetaDeg << "度" << endl;
return 0;
}