📄 gm(1,1).txt
字号:
#define N 100
#include "math.h"
void main()
{
int t0,tn,t,n,i,j;
float a[N],a1[N],b[N-1],b1[N];
float q[N],z,z11 = 0.0,z12 = 0.0,z21,z22,c1 = 0.0,c2 = 0.0,a0,p = 0.0,u,y = 0.0,yy = 0.0,s1,s2,c,g0,g1,g;
printf("input qi shi nian t0=");
scanf("%d",&t0);
printf("\ninput zhong zhi nian tn=");
scanf("%d",&tn);
n=tn-t0+1;
printf("\n * * * gm(1,1) * * * \n ");
printf("qi zhi nian:%d--%d nian\n",t0,tn);
printf("input data:\n");
for(i=0;i<n;i++)
{
printf("data%d:",i);
scanf("%f",&a[i]);
}
a1[0]=a[0];
for(i=1;i<n;i++)
a1[i]=a1[i-1]+a[i];
for(i=0;i<n-1;i++)
b[i]= -(a1[i]+a1[i+1])/2;
for(i=0;i<n-1;i++)
{
z11+=b[i]*b[i];
z12+=b[i];
}
z22=n-1;z=z11*z22-z12*z12;
z11=z11/z;z12=-z12/z;z22=z22/z;
for(i=0;i<n-1;i++)
{
c1+=b[i]*a[i+1];
c2+=a[i+1];
}
a0=c1*z22+c2*z12;u=c1*z12+c2*z11;
printf("= = = xi shu xiang liang = = =\n");
printf("^a=%f ^u=%f\n",a0,u);
printf("^x(t+1)= %fe^%ft",a[1]-u/a0,-a0);
if (a0>0&&u>0||a0<0&&u<0)
printf("+%f\n",u/a0);
else printf("%f\n",u/a0);
for (i=0;i<n-1;i++)
a1[i+1]=(a[1]-u/a0)*exp(-a0*i)+u/a0;
for (i=1;i<n;i++)
b1[i]=a1[i]-a1[i-1];
for (i=1;i<n;i++)
q[i]=a[i]-b1[1];
printf("e q%\n");
for(i=1;i<n;i++)
printf("e(%d)=%f\t\tg(%d)=%f\n",i,q[i],i,q[i]/a[i]*100);
for(i=0;i<n;i++)
yy+=a[i]*a[i];
s1=sqrt((yy-a1[n-1]*a1[n-1]/(float)n)/ (float)n);
yy=0;
for(i=1;i<n;i++)
y+=q[i];
yy+=q[i]*q[i];
s2=sqrt((yy-y*y/(float)(n-1))/(float)(n-1));
c=s2/s1;
for(i=1;i<n;i++)
if(abs(q[i]-y/(n-1))<0.6745*s1)
p+=1;
p=p/(n-1);
printf("= = = hou wu cha jian yan = = =\n");
printf("fang cha bi c= %f\n",c);
if(c<0.35) printf("hao\n");
else if(c<0.5) printf("he ge\n");
else if(c<0.65) printf("mian qiang\n");
else printf("bu he ge\n");
printf("xiao wu cha gai lu p=%f\n",p);
if(p>0.95) printf("hao\n");
else if(p>0.8) printf("he ge\n");
else if(p>0.7) printf("mian qiang\n");
else printf("bu he ge\n");
printf("input zheng zhi nian t=");
scanf("%d",&t);
t=t-tn;
printf("= = =yu ce= = =\n");
g0=(a[1]-u/a0)*exp(-a0*n)+u/a0;
for (i=0;i<t-1;i++)
{
g=(a[1]-u/a0)*exp(-a0*(n+i+1))+u/a0;
g1=g-g0;
printf("^x0(%d)=%f\n",tn+i+2,g1);
g0=g;
}
printf("= = =end = = =\n");
getch();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -