Ⅰ 关于最小二乘法的c语言程序
#include <stdio.h>
void main ()
{
int num,i;
float x,y,l,m,n,p,a,b;
i=1;
l=0.0;
m=0.0;
n=0.0;
p=0.0;
printf ("请输入你想计算的x,y的个数:");
scanf("%d",&num);
if (num>=1)
{
while (i<=num);
{
printf("请输入x的值");
scanf ("%lf",&x);
printf("请输入y的值");
scanf ("%lf",&y);
l+=x;
m+=y;
n+=x*y;
p+=x*x;
i++;
}
a=(num*n-l*m)/(num*p-l*l);
b=(p*m-n*l)/(num*p-l*l);
printf("最小二乘法所算得的斜率和截距分别为%f和%f\n",a,b);
}
else printf("mun"输入有误!);
}