本篇文章介绍了在C++中实现多项式拟合的方法和技术。通过使用数值算法库和线性代数工具,可以高效地求解最小二乘问题,并应用于数据建模与预测。
#ifndef FUNCTION_H_
#define FUNCTION_H_
#include
#include
#include polyfit.h
#include
using namespace std;
class dxs {
public:
dxs();
void dfine();
void show();
void select_main(int k, float **p, int m);
void gaosi();
void answer();
~dxs();
private:
int n;
int m;
float *x;
float *y;
float **u;
};
dxs::dxs() {
ifstream fin(多项式拟合.txt);
fin >> n;
x = new float[n];
y = new float[n];
for (int i = 0; i < n; ++i) {
fin >> x[i];
}
for(int i=0;i>y[i];
}
cout << 输入拟合多项式的次数: ;
int nn;
cin >> nn;
m = nn + 1;
u = new float*[m];
for (int i = 0; i < m; ++i) {
u[i] = new float[m+1];
}
}
void dxs::dfine() {
for(int i=0;i fabs(d)){
d= *(*(p+i)+k);
l=i;
}
}
if(d==0){
cout<<错误;
}else{
if(k!=l){
for (int j = k; j < m + 1; ++j) {
double t=*(*(p+l)+j);
*(*(p+l)+j)=*(*(p+k)+j);
*(*(p+k)+j)=t;
}
}
}
}
void dxs::gaosi(){
for(int k=0;k= 0 ;--i) {
float a=0;
for(int j=i+1;j