logo资料库

武汉大学遥感院机试代码.doc

第1页 / 共25页
第2页 / 共25页
第3页 / 共25页
第4页 / 共25页
第5页 / 共25页
第6页 / 共25页
第7页 / 共25页
第8页 / 共25页
资料共25页,剩余部分请下载后查看
2004: #include #include #include //sort所需头文件 #include using namespace std; int main() { ifstream infile("test.txt"); ofstream outfile("result.txt"); if(!infile) { cout<<"text.txt open failed"<m_vecInt; //读出数的个数 int sum = 0; infile>>sum; int i = 0; while(i>number; m_vecInt.push_back(number); i++; } //排序算法 sort(m_vecInt.begin(), m_vecInt.end()); outfile<<"the min number is:"<
2005: #include #include #include using namespace std; typedef vector >VecInt; VecInt ConvolutionFun1(const vector&vec, const int & m, const int& n); VecInt ConvolutionFun2(const vector&vec, const int&r, const int&s); int main() { const int M =125; const int N =80; const int R =100; const int S =100; VecInt vecInt; int i,j; ifstream infile("SourceData.txt"); if(!infile) { cout<<"SourceData.txt open failed.\n"; return 1; } vectorvec_int; int numeric(0); for(i=0;i<10000;i++) { infile>>numeric; vec_int.push_back(numeric); } ofstream outfile("result.txt"); if(!outfile) { cout<<"result.txt open failed.\n"; return 1; } outfile<<"卷积一次后的矩阵:\n"; vecInt = ConvolutionFun1(vec_int, M, N); for(i=0; i
outfile<<'\n'; } outfile<<'\n'; vecInt = ConvolutionFun2(vec_int, R, S); outfile<<"第二次卷积后的矩阵:\n"; for(i=0; i&vec, const int&m, const int&n) { VecInt vecInt(m, vector(n)); int num =0; for(int i=0; i
//卷积函数 VecInt ConvolutionFun2(const vector&vec, const int&r, const int&s) { VecInt vecInt(r, vector(s)); int num =0; for(int i=0; i //ifstream ofstream头文件 #include //sqrt,log,cos所需头文件 #include #include #include
//accumulate所需头文件 #include using namespace std; const int N = 100; const double PI = 3.1415926; int main() { int i; //定义vector对象,存储产生的随机数 vectorvec_double; vectorvec_square_double; //定义输出流对象 ofstream outfile("SourceData.txt"); if(!outfile) { cerr<<"SourceData.txt open failed.\n"; return 1; } //随机数产生的开始点 srand((unsigned)time(NULL)); //产生个随机数 for(i=0;i
//清空容器 vec_double.clear(); double num =0.0; vectorvec_normalDistibution; vectorvec_squre_NorDistibution; for(i=0;i>num; vec_double.push_back(num); double num_normal_distrion = (sqrt((-2)*log(num))*cos(2*PI*num))*0.3 + 1; vec_normalDistibution.push_back(num_normal_distrion); vec_squre_NorDistibution.push_back(num_normal_distrion * num_normal_distrion); } //定义输出路对象outfile2 ofstream outfile2("ResultData.txt"); if(!outfile) { cerr<<"ResultData.txt open failed.\n"; return 1; } //输出正太分布数值 copy(vec_normalDistibution.begin(), vec_normalDistibution.end(), ostream_iterator(outfile2, " ")); outfile2<<'\n'; double sum_normalDistibution = accumulate(vec_normalDistibution.begin(),vec_normalDistibution.end(),0.0); double average_normalDistibution = sum_normalDistibution/N; double sum_squre_NorDistibution = accumulate(vec_squre_NorDistibution.begin(),vec_squre_NorDistibution.end(),0.0); double variance_normalDistibution = sum_squre_NorDistibution/N - (average_normalDistibution * average_normalDistibution); outfile2<<"均值为:\n"< #include #include #include
#include using namespace std; typedef vector > VecDouble; double AverageVector(const vector & vecDouble); VecDouble CovariationMatrix(const vector > & vecDouble, const vector & vecAverageDouble, int nBand, int nPiexl); int main() { int nBand; int nPiexl; int i,j; ifstream infile("data.txt"); if(!infile) { cerr<<"data.txt open failed.\n"; return 1; } ofstream outfile("result.txt"); if(!outfile) { cerr<<"result.txt open failed.\n"; return 1; } infile>>nBand>>nPiexl; vector >vec_double(nBand, vector(nPiexl)); for(i=0; i>vec_double[i][j]; } } vectorvec_average_double(nBand); for(i=0; i(outfile, " ")); outfile<<'\n'; VecDouble vec_covariation_double(nBand, vector(nPiexl)); vec_covariation_double = CovariationMatrix(vec_double, vec_average_double, nBand,
nPiexl); outfile<<"协方差矩阵:\n"; for( i =0; i & vecDouble) { int size = vecDouble.size(); double sum = accumulate(vecDouble.begin(), vecDouble.end(), 0); double average = sum/size; return average; } //协方差矩阵函数 VecDouble CovariationMatrix(const vector > & vecDouble, const vector & vecAverageDouble, int nBand, int nPiexl) { VecDouble vec_coveration_double(nBand, vector(nBand)); for(int i =0; i
分享到:
收藏