Least Squaqe Regression (Order 1)

/* ......++++++ Least Squre Regression ....++++
......++++++ Order 1 ....++++
......++++++ AUTHOR: SUDIPTA KUMAR PAIK ....++++
......++++++ Numerical Method __3702 ....++++*/


# define eqn 50

main()
{ int q,n,m;
float xy[eqn+1][eqn+2];
float sumxy=0,sumx=0,sumy=0,sumx2=0,x_bar=0,y_bar=0,a0,a1;

do
{
clrscr();

printf("\n\t\tEnter [ 0 ] for EXIT \n");
printf("\n\t\tMaximum[ %d ] \n",eqn);
printf("\n Enter No. of Observation ");

scanf("%d",&n);
if(n==0)
{ printf("\n\n\n\t\tThank you for use this program\n");
printf("\n\t\t.............Prepared By SUDIPTA.............. ");
getch();
exit(1);
}
m=n+1;
for(q=1; q<=n; q++)
{ printf("\n\n Observation %d\n",q);
xy[q][1]=q;
printf("\n x%d=%.f",q,xy[q][1]);
printf("\ty%d=", q);
scanf("%f",&xy[q][2]);
}

for(q=1; q<=n; q++)
{ sumxy=sumxy+xy[q][1]*xy[q][2];
sumx2=sumx2+xy[q][1]*xy[q][1];
sumx=sumx+xy[q][1];
sumy=sumy+xy[q][2];
}
x_bar=sumx/n;
y_bar=sumy/n;

a1=((n*sumxy)-(sumx*sumy))/((n*sumx2)-(sumx*sumx));
a0=y_bar-a1*x_bar;

printf("\n\n\n The Least Square Fit is ");

if(a1<0)
printf("\n\n y=%f%fx",a0,a1);
else
printf("\n\n y=%f+%fx",a0,a1);

getch();

}while(1);

}

No comments:

Post a Comment