アットウィキロゴ

pro0901

#include <stdio.h>
#include <math.h>
int main(void)
{
double a,beta,ks,h,k1,r1,c1,e,n1;
double k[101],cx[101],cp[101];
int n,n2,n3,t;
a=0.33;
beta=0.95;
ks=pow((1/beta-1)/a,1/(a-1));
h=2*ks/100;
for (n=1;n<=100;n++){
k[n] = n*h;
cx[n]=pow(k[n],a);
}
t=0;
while (t<100){
for (n=10;n<=90;n++){
k1=k[n]+pow(k[n],a)-cx[n];
n1=k1/h;
n2=floor(n1);
n3=n2+1;
c1=cx[n2]+(n1-n2)*(cx[n3]-cx[n2]);
r1=a*pow(k1,a-1);
cp[n]=c1/(beta*(1+r1));
}
e=0;
for (n=10;n<=90;n++){
e=e+pow(cx[n]-cp[n],2);
}
for (n=10;n<=90;n++){
cx[n]=cp[n];
}
if (e < 0.0001) t=1000;
t=t+1;
}

for (n=10;n<=90;n++){
printf("%f",cx[n]);
printf("\n");
}
return 0;
}
最終更新:2010年09月04日 01:56