eudist.cpp
来自「求向量的欧式距离」· C++ 代码 · 共 88 行
CPP
88 行
#include<iostream.h>
#include<vector>
#include<math.h>
#include<string>
#include<algorithm>
#include<fstream>
using namespace std;
double GetDist(const vector<double>,const vector<double>);
void main()
{
/*
vector<double> feture1;
vector<double> feture2;
for(int j=0;j<5;j++)
{
srand(j+1);
feture1.push_back(j*2+rand()%(j+1));
feture2.push_back(j*3+rand()%(j+1));
}
for(int i=0;i<feture1.size();i++)
{
cout.width(4);
cout<<feture1[i];
}
cout<<endl;
for(i=0;i<feture1.size();i++)
{
cout.width(4);
cout<<feture2[i];
}
cout<<endl;
cout<<GetDist(feture1,feture2);
cout<<endl;
ifstream is;
is.open("c:\\match.txt");
cout<<is.is_open()<<endl;
ofstream os;
os.open("c:\\test.txt",ios::app);
cout<<os.is_open()<<endl;
ifstream file;
file.open("e:\\test.txt");
cout<<file.is_open()<<endl;
char ch;
vector<char> cvec;
while(!is.eof())
{
is.get(ch);
// cout<<ch;
cvec.push_back(ch);
}
cout<<endl;
for(int k=0;k<cvec.size();k++)
{
cout<<cvec[k];
os<<cvec[k];
}
cout<<endl<<cvec.size()<<endl;
cout<<count(cvec.begin(),cvec.end(),'95')<<endl;
*/
}
//求两个向量的欧式距离
double GetDist(const vector<double> dvec1,const vector<double> dvec2)
{
double sum=0.0;
double temp=0.0;
if(dvec1.size()!=dvec2.size()) {return 0.0;}
for(int i=0;i<dvec1.size();i++)
{
temp=fabs(dvec1[i]-dvec2[i]);
sum+=temp*temp;
}
return sum;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?