當前位置:編程學習大全網 - 編程軟體 - 最小二乘法擬合c++編程問題

最小二乘法擬合c++編程問題

#include<stdio.h>

#include<math.h>

void Guass(int n,float Array[][10])

{

float s,u;

int i,j,k,a,x,y;

for(i=0;i<n-1;i++)

{

s=Array[i][i];

k=i;

for(a=i+1;a<n;a++)

{

if(fabs(s) < fabs(Array[a][i]))

{

s=Array[a][i];

k=a;

}

}

if(k!=i)

{

for(j=i;j<n+1;j++)

{

u=Array[i][j];Array[i][j]=Array[k][j];Array[k][j]=u;

}

}

for(x=i+1;x<n;x++)

{

u=Array[x][i]/s;

for(y=i;y<n+1;y++)

{

Array[x][y]=Array[x][y]-u*Array[i][y];

}

}

}

for(x=n-1;x>=0;x--)

{

s=0;

for(y=x+1;y<n;y++)

s=s+Array[x][y]*Array[y][n];

Array[x][n]=(Array[x][n]-s)/(Array[x][x]);//得到結果

}

for(i=0;i<n;i++)printf("%f ",Array[i][n]);printf("\n");

}

int main()

{

int n,i,j;

float Array[10][10];

scanf("%d",&n);

for(i=0;i<n;i++)

{

for(j=0;j<n+1;j++)

scanf("%f",&Array[i][j]);

}

Guass(n,Array);

return 0;

}

  • 上一篇:大家好!請問比較專業的AI換臉軟件電腦的有啥推薦?
  • 下一篇:數據結構和算法不壹樣嗎?
  • copyright 2024編程學習大全網