作者在 2011-06-25 09:53:05 发布以下内容
#include<iostream.h>
#include<math.h>
#include "shengming.h"
double cor1(int [],double ,double ,int );
void main()
{
int t[],n=0,q=0;
double a,b,mx,my;
input (t,n,q);
mx=mx(n);
my=my(t,n);
b=bt(t,n,mx,my);
a=at(mx,my,b);
output(t,n,a,b,q);
cout<<" 预测1995年的人均寿命y为: "<<fun(a,b,1995,q)<<endl;
switch (int cor)
{
case 0
cout<<" 这条直线完全没有用处。 "<<endl;
case 1
cout<<" 这条直线完全符合实际情况。 "<<endl;
if (int cor>0.81)
cout<<" 这条直线能够符合实际情况。 "<<endl;
else
cout<<" 这条直线不能符合实际情况。 "<<endl;
}
double cor1(int t[],double my,double mx, int n)
{
double a1=0,b1=0,c1=0;
for (int i=1;i<=n;i++)
{
a1+=(i-mx)*(t[i-1]-my);
b1+=(i-mx)*(i-mx);
c1+=(t[i-1]-my)*(t[i-1]-my);
}
a1=a1/n;
b1=sqar(b1/n);
c1=sqar(c1/n);
double cor=a1/(b1*c1);
retern cor;
}
}
#include<math.h>
#include "shengming.h"
double cor1(int [],double ,double ,int );
void main()
{
int t[],n=0,q=0;
double a,b,mx,my;
input (t,n,q);
mx=mx(n);
my=my(t,n);
b=bt(t,n,mx,my);
a=at(mx,my,b);
output(t,n,a,b,q);
cout<<" 预测1995年的人均寿命y为: "<<fun(a,b,1995,q)<<endl;
switch (int cor)
{
case 0
cout<<" 这条直线完全没有用处。 "<<endl;
case 1
cout<<" 这条直线完全符合实际情况。 "<<endl;
if (int cor>0.81)
cout<<" 这条直线能够符合实际情况。 "<<endl;
else
cout<<" 这条直线不能符合实际情况。 "<<endl;
}
double cor1(int t[],double my,double mx, int n)
{
double a1=0,b1=0,c1=0;
for (int i=1;i<=n;i++)
{
a1+=(i-mx)*(t[i-1]-my);
b1+=(i-mx)*(i-mx);
c1+=(t[i-1]-my)*(t[i-1]-my);
}
a1=a1/n;
b1=sqar(b1/n);
c1=sqar(c1/n);
double cor=a1/(b1*c1);
retern cor;
}
}
void input (int t[] ,int n,int q)
{
int i;
cout<<" 年"<<"\t"<<" Xi"<<"\t"<<" 平均寿命(Yi)"<<endl;
for (i=0;i<d;i++)
{
cout<<" "<<a+i<<" "<<i+1<<" "<<;
cin>>t[i];
cout<<endl;
}
}
void output (int t[],int n,double a,double b,int q)
{
double sum1=0,sum2=0,d,e;
for (int i=0;i<n;i++)
sum1+=t[i];
d=sum1/n;
for (i=0;i<n;i++)
sum2+=(t[i]-d)*(t[i]-d);
e=sqrt(sum2/n);
cout<<"人均寿命的平均值为: "<<d<<endl;
cout<<"人均寿命的均方差为: "<<e<<endl;
cout<<"回归方程式为: Y="<<a<<"+"<<b<<"x"<<endl;
}
double mx(int n)
{
int i,sum=0;
for (i=1;i<=n;i++)
sum+=i;
return sum/n;
}
{
int i;
cout<<" 年"<<"\t"<<" Xi"<<"\t"<<" 平均寿命(Yi)"<<endl;
for (i=0;i<d;i++)
{
cout<<" "<<a+i<<" "<<i+1<<" "<<;
cin>>t[i];
cout<<endl;
}
}
void output (int t[],int n,double a,double b,int q)
{
double sum1=0,sum2=0,d,e;
for (int i=0;i<n;i++)
sum1+=t[i];
d=sum1/n;
for (i=0;i<n;i++)
sum2+=(t[i]-d)*(t[i]-d);
e=sqrt(sum2/n);
cout<<"人均寿命的平均值为: "<<d<<endl;
cout<<"人均寿命的均方差为: "<<e<<endl;
cout<<"回归方程式为: Y="<<a<<"+"<<b<<"x"<<endl;
}
double mx(int n)
{
int i,sum=0;
for (i=1;i<=n;i++)
sum+=i;
return sum/n;
}
double my(int t[],int n)
{
{
int i,sum=0;
for (i=0;i<n;i++)
sum+=t[i];
return sum/n;
}
for (i=0;i<n;i++)
sum+=t[i];
return sum/n;
}
double at (double mx,double my, double b)
{
return my-b*mx;
}
{
return my-b*mx;
}
double bt(int t[], int n,double mx,double my)
{
double c=0,d=0;
for (int i=1;i<=n;i++)
{
c+=(i-mx)*(t[i-1]-my);
d+=(i-mx)*(i-mx);
}
return c/d;
}
double fun(double a,double b,int x,int q)
{
return a+b*(x-q+1);
}
{
double c=0,d=0;
for (int i=1;i<=n;i++)
{
c+=(i-mx)*(t[i-1]-my);
d+=(i-mx)*(i-mx);
}
return c/d;
}
double fun(double a,double b,int x,int q)
{
return a+b*(x-q+1);
}
这个程序哪儿不对?为什么声明文件打不开?