求各路大神帮忙看看这个代码问题出在哪里,为什么运行的时候会什么都没有呢。。。
#include
#include
#include
#include
using namespace std;
int main()
{
int count(0);
const int MAX_SIZE = 20;
int x[MAX_SIZE];
double y[MAX_SIZE],y_est[MAX_SIZE],diff_est[MAX_SIZE],diff_avg[MAX_SIZE],y_avg,sumx(0), sumy(0), sumx2(0),
sumxy(0),sum_diff_est(0), sum_diff_avg(0),denominator, m, b,Rsquare;
string filename;
ifstream data;
cout << "Enter name of input file:";
cin >> filename;
data.open(filename.c_str());
if(data.fail())
{
cerr << "Error opening input file\n";
exit(1);
}
while ( !data.eof() )
{
data >> x[MAX_SIZE] >> y[MAX_SIZE];
for(int k=0;k<MAX_SIZE;k++)
{
sumx += x[k];
sumy += y[k];
sumx2 += x[k]*x[k];
sumxy += x[k]*y[k];
k=count;
}
}
denominator = count*sumx2 - sumx*sumx;
m = (count*sumxy - sumx*sumy)/denominator;
b = (sumx2*sumy - sumx*sumxy)/denominator;
y_avg = sumy/count;
for(int j=0;j<MAX_SIZE;j++)
{
y_est[j] = m*x[j]+b;
diff_est[j] = y_est[j]-y[j];
diff_avg[j] = y[j]-y_avg;
sum_diff_est += diff_est[j]*diff_est[j];
sum_diff_avg += diff_avg[j]*diff_avg[j];
}
Rsquare = sum_diff_est/sum_diff_avg;
cout.setf(ios::fixed);
cout.precision(5);
cout << "Linear model: \n";
cout << "y = " << m << " x + " << b << endl;
cout << "And the value of R square is: " << Rsquare << endl;
system("pause");
data.close();
return 0;
}